[clang] [llvm] [ARM][KCFI] Add backend support for Kernel Control-Flow Integrity (PR #163698)

Kees Cook via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 16 13:09:50 PDT 2025


================
@@ -687,7 +687,9 @@ static void addKCFIPass(const Triple &TargetTriple, const LangOptions &LangOpts,
                         PassBuilder &PB) {
   // If the back-end supports KCFI operand bundle lowering, skip KCFIPass.
   if (TargetTriple.getArch() == llvm::Triple::x86_64 ||
-      TargetTriple.isAArch64(64) || TargetTriple.isRISCV())
+      TargetTriple.isAArch64(64) || TargetTriple.isRISCV() ||
+      TargetTriple.getArch() == llvm::Triple::arm ||
----------------
kees wrote:

Hrm. Isn't this dependent on target triple, though? Under arm-linux-eabi is thumb mode allowed at all? I just want to leave generic mode enabled for non-arm32-mode. 😭

https://github.com/llvm/llvm-project/pull/163698


More information about the cfe-commits mailing list