[llvm] r273556 - [ARM] Use member initializers in ARMSubtarget. NFCI

Diana Picus via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 23 05:04:34 PDT 2016


Author: rovka
Date: Thu Jun 23 07:04:33 2016
New Revision: 273556

URL: http://llvm.org/viewvc/llvm-project?rev=273556&view=rev
Log:
[ARM] Use member initializers in ARMSubtarget. NFCI

Move most of the initializations in ARMSubtarget::initializeEnvironment to
member initializers.

Change suggested by Matthias Braun (see http://reviews.llvm.org/D21432).

Modified:
    llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp

Modified: llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp?rev=273556&r1=273555&r2=273556&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp Thu Jun 23 07:04:33 2016
@@ -90,7 +90,28 @@ ARMSubtarget::ARMSubtarget(const Triple
                            const std::string &FS,
                            const ARMBaseTargetMachine &TM, bool IsLittle)
     : ARMGenSubtargetInfo(TT, CPU, FS), ARMProcFamily(Others),
-      ARMProcClass(None), ARMArch(ARMv4t), stackAlignment(4), CPUString(CPU),
+      ARMProcClass(None), ARMArch(ARMv4t), HasV4TOps(false), HasV5TOps(false),
+      HasV5TEOps(false), HasV6Ops(false), HasV6MOps(false), HasV6KOps(false),
+      HasV6T2Ops(false), HasV7Ops(false), HasV8Ops(false), HasV8_1aOps(false),
+      HasV8_2aOps(false), HasV8MBaselineOps(false), HasV8MMainlineOps(false),
+      HasVFPv2(false), HasVFPv3(false), HasVFPv4(false), HasFPARMv8(false),
+      HasNEON(false), UseNEONForSinglePrecisionFP(false),
+      UseMulOps(UseFusedMulOps), SlowFPVMLx(false), HasVMLxForwarding(false),
+      SlowFPBrcc(false), InThumbMode(false), UseSoftFloat(false),
+      HasThumb2(false), NoARM(false), ReserveR9(false), NoMovt(false),
+      SupportsTailCall(false), HasFP16(false), HasFullFP16(false),
+      HasD16(false), HasHardwareDivide(false), HasHardwareDivideInARM(false),
+      HasT2ExtractPack(false), HasDataBarrier(false), HasV7Clrex(false),
+      HasAcquireRelease(false), Pref32BitThumb(false),
+      AvoidCPSRPartialUpdate(false), AvoidMOVsShifterOperand(false),
+      HasRetAddrStack(false), HasMPExtension(false), HasVirtualization(false),
+      FPOnlySP(false), HasPerfMon(false), HasTrustZone(false),
+      Has8MSecExt(false), HasCrypto(false), HasCRC(false), HasRAS(false),
+      HasZeroCycleZeroing(false), IsProfitableToUnpredicate(false),
+      HasSlowVGETLNi32(false), HasSlowVDUP32(false), PreferVMOVSR(false),
+      PreferISHST(false), UseNEONForFPMovs(false), StrictAlign(false),
+      RestrictIT(false), HasDSP(false), UseNaClTrap(false), GenLongCalls(false),
+      UnsafeFPMath(false), UseSjLjEH(false), stackAlignment(4), CPUString(CPU),
       IsLittle(IsLittle), TargetTriple(TT), Options(TM.Options), TM(TM),
       FrameLowering(initializeFrameLowering(CPU, FS)),
       // At this point initializeSubtargetDependencies has been called so
@@ -103,71 +124,6 @@ ARMSubtarget::ARMSubtarget(const Triple
       TLInfo(TM, *this) {}
 
 void ARMSubtarget::initializeEnvironment() {
-  HasV4TOps = false;
-  HasV5TOps = false;
-  HasV5TEOps = false;
-  HasV6Ops = false;
-  HasV6MOps = false;
-  HasV6KOps = false;
-  HasV6T2Ops = false;
-  HasV7Ops = false;
-  HasV8Ops = false;
-  HasV8_1aOps = false;
-  HasV8_2aOps = false;
-  HasV8MBaselineOps = false;
-  HasV8MMainlineOps = false;
-  HasVFPv2 = false;
-  HasVFPv3 = false;
-  HasVFPv4 = false;
-  HasFPARMv8 = false;
-  HasNEON = false;
-  UseNEONForSinglePrecisionFP = false;
-  UseMulOps = UseFusedMulOps;
-  SlowFPVMLx = false;
-  HasVMLxForwarding = false;
-  SlowFPBrcc = false;
-  InThumbMode = false;
-  UseSoftFloat = false;
-  HasThumb2 = false;
-  NoARM = false;
-  ReserveR9 = false;
-  NoMovt = false;
-  SupportsTailCall = false;
-  HasFP16 = false;
-  HasFullFP16 = false;
-  HasD16 = false;
-  HasHardwareDivide = false;
-  HasHardwareDivideInARM = false;
-  HasT2ExtractPack = false;
-  HasDataBarrier = false;
-  Pref32BitThumb = false;
-  AvoidCPSRPartialUpdate = false;
-  AvoidMOVsShifterOperand = false;
-  HasRetAddrStack = false;
-  HasMPExtension = false;
-  HasVirtualization = false;
-  FPOnlySP = false;
-  HasPerfMon = false;
-  HasTrustZone = false;
-  Has8MSecExt = false;
-  HasCrypto = false;
-  HasCRC = false;
-  HasRAS = false;
-  HasZeroCycleZeroing = false;
-  IsProfitableToUnpredicate = false;
-  HasSlowVGETLNi32 = false;
-  HasSlowVDUP32 = false;
-  PreferVMOVSR = false;
-  PreferISHST = false;
-  UseNEONForFPMovs = false;
-  StrictAlign = false;
-  HasDSP = false;
-  UseNaClTrap = false;
-  GenLongCalls = false;
-  UnsafeFPMath = false;
-  HasV7Clrex = false;
-  HasAcquireRelease = false;
-
   // MCAsmInfo isn't always present (e.g. in opt) so we can't initialize this
   // directly from it, but we can try to make sure they're consistent when both
   // available.




More information about the llvm-commits mailing list