memx

memx
minics libc.
This crate is implemented memory functions like libc memcmp(), memchr(),
memmem(), memcpy(), memset().
Features
- Rewriting with rust lang.
- minimum support rustc 1.56.1 (59eed8a2a 2021-11-01)
Todo
- [ ] Support the zero overhead trait.
- [x] Support more fast routine on armv7-android
- [x] Support more fast routine on x86_64
- [x] Support #![no_std]
Support status of miri :: rustc 1.68.0-nightly (77429957a 2023-01-01)
Ok lists:
- cargo +nightly miri test --target=x86_64-unknown-linux-gnu
- cargo +nightly miri test --target=i686-unknown-linux-gnu
- cargo +nightly miri test --target=i586-unknown-linux-gnu
- cargo +nightly miri test --target=aarch64-unknown-linux-gnu
- cargo +nightly miri test --target=armv7-unknown-linux-gnueabihf
Failed lists:
Benchmark results
| forward search | backward search |
|:---------------|:----------------|
| [memchr()
] | [memrchr()
] |
| [memnechr()
] | [memrnechr()
] |
| [memmem()
] | [memrmem()
] |
| memory op |
|:---------------|
| [memcmp()
] |
| [memeq()
] |
| [memcpy()
] |
| [memset()
] |
Changelogs
This crate's changelog here.
License
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or
https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or
https://opensource.org/licenses/MIT)
at your option.