Use std::bitset for SubtargetFeatures
authorMichael Kuperstein <michael.m.kuperstein@intel.com>
Thu, 19 Feb 2015 09:01:04 +0000 (09:01 +0000)
committerMichael Kuperstein <michael.m.kuperstein@intel.com>
Thu, 19 Feb 2015 09:01:04 +0000 (09:01 +0000)
commitba5b04c798b9cf30420f75128737a97b265d1e50
tree3d0b7c38f118af48f0f0902812f845e577f95f35
parent36f974d76babc13a3e1de7b54965583878d5f272
Use std::bitset for SubtargetFeatures

Previously, subtarget features were a bitfield with the underlying type being uint64_t.
Since several targets (X86 and ARM, in particular) have hit or were very close to hitting this bound, switching the features to use a bitset.

No functional change.

Differential Revision: http://reviews.llvm.org/D7065

llvm-svn: 229831
33 files changed:
llvm/include/llvm/MC/MCInstPrinter.h
llvm/include/llvm/MC/MCInstrDesc.h
llvm/include/llvm/MC/MCSubtargetInfo.h
llvm/include/llvm/MC/SubtargetFeature.h
llvm/lib/MC/MCSubtargetInfo.cpp
llvm/lib/MC/SubtargetFeature.cpp
llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
llvm/lib/Target/ARM/ARMAsmPrinter.cpp
llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
llvm/lib/Target/ARM/ARMSubtarget.cpp
llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp
llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h
llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp
llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp
llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
llvm/lib/Target/R600/MCTargetDesc/AMDGPUMCTargetDesc.cpp
llvm/lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp
llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp
llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp
llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp
llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
llvm/utils/TableGen/AsmMatcherEmitter.cpp
llvm/utils/TableGen/FixedLenDecoderEmitter.cpp
llvm/utils/TableGen/InstrInfoEmitter.cpp
llvm/utils/TableGen/SubtargetEmitter.cpp