diff --git a/clang/lib/Basic/Targets/BPF.cpp b/clang/lib/Basic/Targets/BPF.cpp index e0527db59c97..0cf55a58a951 100644 --- a/clang/lib/Basic/Targets/BPF.cpp +++ b/clang/lib/Basic/Targets/BPF.cpp @@ -20,7 +20,7 @@ using namespace clang::targets; void BPFTargetInfo::getTargetDefines(const LangOptions &Opts, MacroBuilder &Builder) const { - DefineStd(Builder, "bpf", Opts); + Builder.defineMacro("__bpf__"); Builder.defineMacro("__BPF__"); } diff --git a/clang/test/Preprocessor/bpf-predefined-macros.c b/clang/test/Preprocessor/bpf-predefined-macros.c new file mode 100644 index 000000000000..bcb985f95426 --- /dev/null +++ b/clang/test/Preprocessor/bpf-predefined-macros.c @@ -0,0 +1,16 @@ +// RUN: %clang -E -target bpfel -x c -o - %s | FileCheck %s +// RUN: %clang -E -target bpfeb -x c -o - %s | FileCheck %s + +#ifdef __bpf__ +int b; +#endif +#ifdef __BPF__ +int c; +#endif +#ifdef bpf +int d; +#endif + +// CHECK: int b; +// CHECK: int c; +// CHECK-NOT: int d;