[clang] 2aecb3c - [Clang][BPF] Add __BPF_FEATURE_GOTOX (#165456)

via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 28 15:20:40 PDT 2025


Author: yonghong-song
Date: 2025-10-28T15:20:36-07:00
New Revision: 2aecb3cc58613010c40e55c3ca45d85249cc970d

URL: https://github.com/llvm/llvm-project/commit/2aecb3cc58613010c40e55c3ca45d85249cc970d
DIFF: https://github.com/llvm/llvm-project/commit/2aecb3cc58613010c40e55c3ca45d85249cc970d.diff

LOG: [Clang][BPF] Add __BPF_FEATURE_GOTOX (#165456)

Add a macro __BPF_FEATURE_GOTOX for bpf target for cpu v4. So the
developer can easily detect whether insn gotox is supported or not.

Added: 
    

Modified: 
    clang/lib/Basic/Targets/BPF.cpp
    clang/test/Preprocessor/bpf-predefined-macros.c

Removed: 
    


################################################################################
diff  --git a/clang/lib/Basic/Targets/BPF.cpp b/clang/lib/Basic/Targets/BPF.cpp
index 0411bcca51789..8de1083d758c7 100644
--- a/clang/lib/Basic/Targets/BPF.cpp
+++ b/clang/lib/Basic/Targets/BPF.cpp
@@ -75,6 +75,7 @@ void BPFTargetInfo::getTargetDefines(const LangOptions &Opts,
     Builder.defineMacro("__BPF_FEATURE_GOTOL");
     Builder.defineMacro("__BPF_FEATURE_ST");
     Builder.defineMacro("__BPF_FEATURE_LOAD_ACQ_STORE_REL");
+    Builder.defineMacro("__BPF_FEATURE_GOTOX");
   }
 }
 

diff  --git a/clang/test/Preprocessor/bpf-predefined-macros.c b/clang/test/Preprocessor/bpf-predefined-macros.c
index cd8a2ec031925..a9ae8c58c3ba7 100644
--- a/clang/test/Preprocessor/bpf-predefined-macros.c
+++ b/clang/test/Preprocessor/bpf-predefined-macros.c
@@ -70,6 +70,9 @@ int u;
 #ifdef __BPF_FEATURE_LOAD_ACQ_STORE_REL
 int v;
 #endif
+#ifdef __BPF_FEATURE_GOTOX
+int w;
+#endif
 
 // CHECK: int b;
 // CHECK: int c;
@@ -110,6 +113,7 @@ int v;
 // CPU_V4: int u;
 
 // CPU_V4: int v;
+// CPU_V4: int w;
 
 // CPU_GENERIC: int g;
 


        


More information about the cfe-commits mailing list