From 99a4322ebea46bc626a7b3b8b92dd00a73ca1dcd Mon Sep 17 00:00:00 2001 From: Yonghong Song Date: Fri, 23 Feb 2018 23:55:29 +0000 Subject: [PATCH] bpf: Hook target feature "alu32" with LLVM LLVM has supported a new target feature "alu32" which could be enabled or disabled by "-mattr=[+|-]alu32" when using llc. This patch link Clang with it, so it could be also done by passing related options to Clang, for example: -Xclang -target-feature -Xclang +alu32 Signed-off-by: Jiong Wang Reviewed-by: Yonghong Song git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@325996 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Basic/Targets/BPF.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/Basic/Targets/BPF.h b/lib/Basic/Targets/BPF.h index 836e47554b..36d2da4dbf 100644 --- a/lib/Basic/Targets/BPF.h +++ b/lib/Basic/Targets/BPF.h @@ -46,7 +46,14 @@ public: void getTargetDefines(const LangOptions &Opts, MacroBuilder &Builder) const override; - bool hasFeature(StringRef Feature) const override { return Feature == "bpf"; } + bool hasFeature(StringRef Feature) const override { + return Feature == "bpf" || Feature == "alu32"; + } + + void setFeatureEnabled(llvm::StringMap &Features, StringRef Name, + bool Enabled) const override { + Features[Name] = Enabled; + } ArrayRef getTargetBuiltins() const override { return None; } -- 2.50.1