diff options
author | Craig Topper <craig.topper@sifive.com> | 2023-07-12 09:29:18 -0700 |
---|---|---|
committer | Craig Topper <craig.topper@sifive.com> | 2023-07-12 09:29:18 -0700 |
commit | 85b27ace52560da6f37d58a8460885adcf147c8b (patch) | |
tree | 3dd8457226f878b6d0ef86255a56b1f2a1e4ef9b /lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h | |
parent | d3ddcfd448d08699e89b8e49e1775f9e30fcc53a (diff) | |
download | llvm-85b27ace52560da6f37d58a8460885adcf147c8b.zip llvm-85b27ace52560da6f37d58a8460885adcf147c8b.tar.gz llvm-85b27ace52560da6f37d58a8460885adcf147c8b.tar.bz2 |
[ARM][AArch64] Add ARM specific builtin for clz that is not undefined for 0 in ubsan.
D152023 made ubsan consider __builtin_clz of 0 undefined regardless of
the target. This ensures portability and matches gcc.
This causes the ACLE intrinsics to also be considered to also be
considered to be undefined for 0 since they used the generic builtins
as their implementation.
This patch adds builtins for ARM that ubsan doesn't know about to make
the behavior defined for 0. Alternatively, I could have added a zero
check to the intrinsics, but the dedicated builtin will give better -O0
codegen.
Fixes #63113.
Reviewed By: tmatheson
Differential Revision: https://reviews.llvm.org/D154915
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h')
0 files changed, 0 insertions, 0 deletions