diff options
author | Benjamin Maxwell <benjamin.maxwell@arm.com> | 2024-10-23 14:16:39 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-23 14:16:39 +0100 |
commit | 1f9953c055d4bf57935a43ea28a73e5fcda7cd96 (patch) | |
tree | 747266dc7e7a255f1af5e36d8817dc048473f38d /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | eb9af19fbf13b91c9df8d6dc8553277169976520 (diff) | |
download | llvm-1f9953c055d4bf57935a43ea28a73e5fcda7cd96.zip llvm-1f9953c055d4bf57935a43ea28a73e5fcda7cd96.tar.gz llvm-1f9953c055d4bf57935a43ea28a73e5fcda7cd96.tar.bz2 |
[clang] Make -fveclib={ArmPL,SLEEF} imply -fno-math-errno (#112580)
These two veclibs are only available for AArch64 targets, and as
mentioned in https://discourse.llvm.org/t/rfc-should-fveclib-imply-fno-math-errno-for-all-targets/81384,
we (Arm) think that `-fveclib` should imply `-fno-math-errno`. By
setting `-fveclib` the user shows they intend to use the vector math
functions, which implies they don't care about errno. However,
currently, the vector mappings won't be used in many cases without
setting `-fno-math-errno` separately.
Making this change would also help resolve some inconsistencies in how
vector mappings are applied (see https://github.com/llvm/llvm-project/pull/108980#discussion_r1766555560).
Note: Both SLEEF and ArmPL state that they do not set `errno`:
- https://developer.arm.com/documentation/101004/2410/General-information/Arm-Performance-Libraries-math-functions
* "The vector functions in libamath which are available on Linux may not set errno nor raise exceptions"
- https://sleef.org/2-references/libm/
* "These functions do not set errno nor raise an exception."
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions