-
Notifications
You must be signed in to change notification settings - Fork 409
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Static dispatch Arm-optimized-routines instead of dynamic dispatch #8892
Conversation
Signed-off-by: Lloyd-Pottiger <yan1579196623@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
ALWAYS_INLINE static inline void * inline_memcpy(void * __restrict dst_, const void * __restrict src_, size_t size) | ||
{ | ||
#if __aarch64__ | ||
#if __ARM_FEATURE_SVE | ||
return __memcpy_aarch64_sve(dst_, src_, size); | ||
#elif __ARM_NEON | ||
return __memcpy_aarch64_simd(dst_, src_, size); | ||
#endif | ||
return __memcpy_aarch64(dst_, src_, size); | ||
#elif __arm__ | ||
return __memcpy_arm(dst_, src_, size); | ||
#else | ||
return memcpy(dst_, src_, size); | ||
#endif | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can this file get the correct macro for __ARM_FEATURE_SVE
/ __ARM_NEON
, etc?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure where these macro is defined. Are they defined in the arm system header?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I have verified.
They are introduced by flag, like "+simd" will add macro __ARM_NEON
.
https://developer.arm.com/documentation/dui0774/l/Other-Compiler-specific-Features/Predefined-macros
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: CalvinNeo, JaySon-Huang The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
[LGTM Timeline notifier]Timeline:
|
/run-all-tests |
What problem does this PR solve?
Issue Number: ref #7193
Problem Summary:
What is changed and how it works?
hook syscall may make
getauxval
failed which may cause core dump.Check List
Tests
Side effects
Documentation
Release note