suricata
suricata copied to clipboard
Implement Memcmp SIMD for arm64 NEON and SVE
Make sure these boxes are checked accordingly before submitting your Pull Request -- thank you.
Contribution style:
- [X] I have read the contributing guide lines at https://docs.suricata.io/en/latest/devguide/contributing/contribution-process.html
Our Contribution agreements:
- [X] I have signed the Open Information Security Foundation contribution agreement at https://suricata.io/about/contribution-agreement/ (note: this is only required once)
Changes (if applicable):
- [X] I have updated the User Guide (in doc/userguide/) to reflect the changes made
- [X] I have updated the JSON schema (in etc/schema.json) to reflect all logging changes (including schema descriptions)
- [X] I have created a ticket at https://redmine.openinfosecfoundation.org/projects/suricata/issues
Link to ticket: https://redmine.openinfosecfoundation.org/issues/7245
Describe changes:
- Increase testing to have values wide enough to use SIMD
- Add a arm64 instruction for timing
- Add both a NEON and SVE implementation for of SCMemcmp (for SVE, the libc version already uses NEON) and SCMemcmpLowercase (for both NEON and SVE)
- Resubmission of https://github.com/OISF/suricata/pull/8764 which has been closed after rebasing
Provide values to any of the below to override the defaults.
- To use an LibHTP, Suricata-Verify or Suricata-Update pull request,
link to the pull request in the respective
_BRANCH
variable. - Leave unused overrides blank or remove.
SV_REPO= SV_BRANCH= SU_REPO= SU_BRANCH= LIBHTP_REPO= LIBHTP_BRANCH=