Revert "[RISCV] Add Clang frontend support for Bitmanip extension"
authorScott Egerton <scott.egerton@embecosm.com>
Wed, 15 Jan 2020 10:43:42 +0000 (10:43 +0000)
committerScott Egerton <scott.egerton@embecosm.com>
Wed, 15 Jan 2020 10:43:42 +0000 (10:43 +0000)
This reverts commit 57cf6ee9c84434161088c39a6f8dd2aae14eb12d.

clang/lib/Basic/Targets/RISCV.cpp
clang/lib/Basic/Targets/RISCV.h
clang/lib/Driver/ToolChains/Arch/RISCV.cpp
clang/test/Preprocessor/riscv-target-features.c

index 58285f1..ab8272c 100644 (file)
@@ -125,10 +125,6 @@ void RISCVTargetInfo::getTargetDefines(const LangOptions &Opts,
 
   if (HasC)
     Builder.defineMacro("__riscv_compressed");
-
-  if (HasB) {
-    Builder.defineMacro("__riscv_bitmanip");
-  }
 }
 
 /// Return true if has this feature, need to sync with handleTargetFeatures.
@@ -143,7 +139,6 @@ bool RISCVTargetInfo::hasFeature(StringRef Feature) const {
       .Case("f", HasF)
       .Case("d", HasD)
       .Case("c", HasC)
-      .Case("b", HasB)
       .Default(false);
 }
 
@@ -161,8 +156,6 @@ bool RISCVTargetInfo::handleTargetFeatures(std::vector<std::string> &Features,
       HasD = true;
     else if (Feature == "+c")
       HasC = true;
-    else if (Feature == "+b")
-      HasB = true;
   }
 
   return true;
index 05da132..9118494 100644 (file)
@@ -30,12 +30,11 @@ protected:
   bool HasF;
   bool HasD;
   bool HasC;
-  bool HasB;
 
 public:
   RISCVTargetInfo(const llvm::Triple &Triple, const TargetOptions &)
       : TargetInfo(Triple), HasM(false), HasA(false), HasF(false),
-        HasD(false), HasC(false), HasB(false) {
+        HasD(false), HasC(false) {
     LongDoubleWidth = 128;
     LongDoubleAlign = 128;
     LongDoubleFormat = &llvm::APFloat::IEEEquad();
index 85869ae..8c343b8 100644 (file)
@@ -331,9 +331,6 @@ static bool getArchFeatures(const Driver &D, StringRef MArch,
     case 'c':
       Features.push_back("+c");
       break;
-    case 'b':
-      Features.push_back("+b");
-      break;
     }
   }
 
index 1d2fd60..a93d7e6 100644 (file)
@@ -7,7 +7,6 @@
 // CHECK-NOT: __riscv_mul
 // CHECK-NOT: __riscv_muldiv
 // CHECK-NOT: __riscv_compressed
-// CHECK-NOT: __riscv_bitmanip
 // CHECK-NOT: __riscv_flen
 // CHECK-NOT: __riscv_fdiv
 // CHECK-NOT: __riscv_fsqrt
 // RUN: -o - | FileCheck --check-prefix=CHECK-C-EXT %s
 // CHECK-C-EXT: __riscv_compressed 1
 
-// RUN: %clang -target riscv32-unknown-linux-gnu -march=rv32ib -x c -E -dM %s \
-// RUN: -o - | FileCheck --check-prefix=CHECK-B-EXT %s
-// RUN: %clang -target riscv64-unknown-linux-gnu -march=rv64ib -x c -E -dM %s \
-// RUN: -o - | FileCheck --check-prefix=CHECK-B-EXT %s
-// CHECK-B-EXT: __riscv_bitmanip 1
-
 // RUN: %clang -target riscv32-unknown-linux-gnu -march=rv32ifd -mabi=ilp32 -x c -E -dM %s \
 // RUN: -o - | FileCheck --check-prefix=CHECK-SOFT %s
 // RUN: %clang -target riscv64-unknown-linux-gnu -march=rv64ifd -mabi=lp64 -x c -E -dM %s \