CT_01_016 - Function Multiversioning (LLVM)
About
This allows the user to write a single function that the compiler will compile multiple times with different ISAs. On the first call of the function an IFUNC resolver will run and determine which function is called.
Stakeholders/Partners
RISE:
SiFive: Kito Cheng (specification and GCC implementation).
SiFive: Piyou Chen (LLVM implementation)
Dependencies
Status
Updates
- target_versions patch landed in llvm https://github.com/llvm/llvm-project/pull/111333
- target_clones patch landed in llvm mid September https://github.com/llvm/llvm-project/pull/85786/
- Split from Target Attribute Support