llvm-project/compiler-rt/test
jinge90 6fab274275 Control-flow Enforcement Technology (CET), published by Intel, introduces
indirect branch tracking(IBT) feature aiming to ensure the target address
of an indirect jump/call is not tampered.
When IBT is enabled, each function or target of any indirect jump/call will start
with an 'endbr32/64' instruction otherwise the program will crash during execution.
To build an application with CET enabled. we need to ensure:

  1. build the source code with "-fcf-protection=full"
  2. all the libraries linked with .o files must be CET enabled too

This patch aims to enable CET for compiler-rt builtins library, we add an option
"COMPILER_RT_ENABLE_CET" whose default value is OFF to enable CET for compiler-rt
in building time and when this option is "ON", "-fcf-protection=full" is added to
BUILTINS_CFLAG and the "endbr32/64" will be placed in the beginning of each assembly
function. We also enabled CET for crtbegin, crtend object files in this patch.

Reviewed by: MaskRay, compnerd, manojgupta, efriedma
Differential Revision: https://reviews.llvm.org/D109811

Signed-off-by: jinge90 <ge.jin@intel.com>
2022-01-10 11:01:11 +08:00
..
BlocksRuntime [compiler-rt] NFC: Fix trivial typo 2021-09-04 14:12:58 +05:30
asan Attempt to stablize compiler-rt/test/asan/TestCases/strncpy-overflow.cpp 2021-12-20 17:51:11 -08:00
builtins Control-flow Enforcement Technology (CET), published by Intel, introduces 2022-01-10 11:01:11 +08:00
cfi [compiler-rt] -fsanitize=cfi is not supported on Darwin 2021-03-17 13:28:42 -07:00
crt Control-flow Enforcement Technology (CET), published by Intel, introduces 2022-01-10 11:01:11 +08:00
dfsan [DFSan] Add option for conditional callbacks. 2022-01-05 15:07:09 -08:00
fuzzer Revert "Revert D109159 "[amdgpu] Enable selection of `s_cselect_b64`."" 2022-01-05 13:10:25 -05:00
gwp_asan [compiler-rt][GWP-ASAN] Disable 2 tests on Armv7 Linux 2021-07-19 10:45:11 +00:00
hwasan [sanitizers] include build ids in stacks on linux. 2021-12-10 14:24:03 -08:00
interception
lsan [lsan] Deflake fork_and_leak test 2021-12-02 18:06:04 -08:00
memprof Revert "Revert D109159 "[amdgpu] Enable selection of `s_cselect_b64`."" 2022-01-05 13:10:25 -05:00
msan [msan] Check for AVX regs using offset 2022-01-05 19:24:00 -08:00
orc [llvm-jitlink] Update handling of library options. 2021-12-15 13:49:30 +11:00
profile [InstrProf] Prevent duplicate functions in correlated data 2021-12-28 14:20:59 -08:00
safestack
sanitizer_common [Darwin][Sanitizer] Lower Python requirement for iOS simulator testing 2022-01-07 17:37:29 -08:00
scudo Revert "[Scudo] Make -fsanitize=scudo use standalone. Migrate tests." 2021-05-26 10:50:26 -07:00
shadowcallstack
tsan [TSan] Don't instrument code that is executed from __tsan_on_report() 2021-12-21 17:02:51 -08:00
ubsan Revert "Revert D109159 "[amdgpu] Enable selection of `s_cselect_b64`."" 2022-01-05 13:10:25 -05:00
ubsan_minimal [test] Fix unused FileCheck prefixes in compiler-rt 2021-02-01 22:32:13 -08:00
xray Fix xray fdr mode to allow multiple flushes 2021-02-10 12:57:24 +11:00
.clang-format [tests][sanitizers] Don't reflow comments 2021-08-03 12:54:00 -07:00
.clang-tidy [NFC][compiler-rt] Refine .clang-tidy checks 2020-09-05 15:42:15 -07:00
CMakeLists.txt [ORC-RT] Add target dependencies to ORC-RT regression tests. 2021-09-28 22:08:47 -07:00
lit.common.cfg.py [msan] Disabled test failing on new GLIBC 2021-11-15 11:18:52 -08:00
lit.common.configured.in [compiler-rt][test] Add shared_unwind requirement 2021-10-06 11:10:36 -07:00