Skip to content
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

Specify the Name Mangling Rule for Vector Function Decorated with OpenMP #455

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

zengdage
Copy link

This pr is to introduce how to name the vector function associated to the scalar function decorated with an OpenMP declare simd directive. It' s important because library vendor and compilers must follow this rule to interface with each other. For example, now risc-v doesn't support libmvec in glibc, if we want to support it, we need to know how to name the vectorized math functions.

I have referenced the aarch64 name manling rule vfabia64 in https://github.com/ARM-software/abi-aa/blob/main/vfabia64/vfabia64.rst#vector-function-signature. The main difference is that the lmul in risc-v replace the isa in aarch64.

Introduce how to name vector function associated to the scalar function
decorated with the OpenMP `declare simd` pragma. These vector functions
can be used to process multiple instances in a single invocation to
improve performance. Both library vendors and compilers must obey
this rule to interface with each other.
@zengdage
Copy link
Author

@kito-cheng Hi, I create a pr and I think we can discuss the name mangling for vector function in here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant