These are the updated version of the older Cortex Strings Library we
previously used. The Arm Optimized Routines also support CPU features
that are currently in development on FreeBSD, e.g. Branch Target
Identification (BTI). Rather than add BTI support to the old code it's
easier to just use the maintained version.
Details
- Reviewers
emaste - Group Reviewers
arm64 - Commits
- rGbfd10d146ba4: Switch to Arm Optimized Routines for mem* & str*
rG2e8ff4d1d5b9: Switch to Arm Optimized Routines for mem* & str*
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
I might change the comment slightly, since we very likely want to move to an ifunc and support the other optimized routines later on. We're not really "fixing" the internal names right now so much as we're mapping the generic aarch64 implementation to the standard name while we do not yet support the other optimized ones.
Otherwise LGTM
I have an updated version in testing as we need to define index and rindex as weak references to strchr and strrchr respectively. I'm also adding an empty memmove.S to so we don't need to remove it from MISRCS, and so rtld can copy the object file for its build.
I'm also adding an empty memmove.S to so we don't need to remove it from MISRCS
Ah, I was wondering about that as an option, sounds good.
Switch to mostly generated asm including the needed file.
- Re-adds the index symbol
- Add an empty memmove.S to simplify the libc and rtld builds