forked from OSchip/llvm-project
remove variable names from comments; NFC
I didn't bother to fix the self-referential definitions and grammar because my eyes started to bleed. llvm-svn: 228004
This commit is contained in:
parent
39428e74a0
commit
e63abfe70e
|
@ -31,7 +31,7 @@ class GlobalValue;
|
||||||
class StringRef;
|
class StringRef;
|
||||||
class TargetMachine;
|
class TargetMachine;
|
||||||
|
|
||||||
/// PICStyles - The X86 backend supports a number of different styles of PIC.
|
/// The X86 backend supports a number of different styles of PIC.
|
||||||
///
|
///
|
||||||
namespace PICStyles {
|
namespace PICStyles {
|
||||||
enum Style {
|
enum Style {
|
||||||
|
@ -58,105 +58,101 @@ protected:
|
||||||
Others, IntelAtom, IntelSLM
|
Others, IntelAtom, IntelSLM
|
||||||
};
|
};
|
||||||
|
|
||||||
/// X86ProcFamily - X86 processor family: Intel Atom, and others
|
/// X86 processor family: Intel Atom, and others
|
||||||
X86ProcFamilyEnum X86ProcFamily;
|
X86ProcFamilyEnum X86ProcFamily;
|
||||||
|
|
||||||
/// PICStyle - Which PIC style to use
|
/// Which PIC style to use
|
||||||
///
|
|
||||||
PICStyles::Style PICStyle;
|
PICStyles::Style PICStyle;
|
||||||
|
|
||||||
/// X86SSELevel - MMX, SSE1, SSE2, SSE3, SSSE3, SSE41, SSE42, or
|
/// MMX, SSE1, SSE2, SSE3, SSSE3, SSE41, SSE42, or none supported.
|
||||||
/// none supported.
|
|
||||||
X86SSEEnum X86SSELevel;
|
X86SSEEnum X86SSELevel;
|
||||||
|
|
||||||
/// X863DNowLevel - 3DNow or 3DNow Athlon, or none supported.
|
/// 3DNow, 3DNow Athlon, or none supported.
|
||||||
///
|
|
||||||
X863DNowEnum X863DNowLevel;
|
X863DNowEnum X863DNowLevel;
|
||||||
|
|
||||||
/// HasCMov - True if this processor has conditional move instructions
|
/// True if this processor has conditional move instructions
|
||||||
/// (generally pentium pro+).
|
/// (generally pentium pro+).
|
||||||
bool HasCMov;
|
bool HasCMov;
|
||||||
|
|
||||||
/// HasX86_64 - True if the processor supports X86-64 instructions.
|
/// True if the processor supports X86-64 instructions.
|
||||||
///
|
|
||||||
bool HasX86_64;
|
bool HasX86_64;
|
||||||
|
|
||||||
/// HasPOPCNT - True if the processor supports POPCNT.
|
/// True if the processor supports POPCNT.
|
||||||
bool HasPOPCNT;
|
bool HasPOPCNT;
|
||||||
|
|
||||||
/// HasSSE4A - True if the processor supports SSE4A instructions.
|
/// True if the processor supports SSE4A instructions.
|
||||||
bool HasSSE4A;
|
bool HasSSE4A;
|
||||||
|
|
||||||
/// HasAES - Target has AES instructions
|
/// Target has AES instructions
|
||||||
bool HasAES;
|
bool HasAES;
|
||||||
|
|
||||||
/// HasPCLMUL - Target has carry-less multiplication
|
/// Target has carry-less multiplication
|
||||||
bool HasPCLMUL;
|
bool HasPCLMUL;
|
||||||
|
|
||||||
/// HasFMA - Target has 3-operand fused multiply-add
|
/// Target has 3-operand fused multiply-add
|
||||||
bool HasFMA;
|
bool HasFMA;
|
||||||
|
|
||||||
/// HasFMA4 - Target has 4-operand fused multiply-add
|
/// Target has 4-operand fused multiply-add
|
||||||
bool HasFMA4;
|
bool HasFMA4;
|
||||||
|
|
||||||
/// HasXOP - Target has XOP instructions
|
/// Target has XOP instructions
|
||||||
bool HasXOP;
|
bool HasXOP;
|
||||||
|
|
||||||
/// HasTBM - Target has TBM instructions.
|
/// Target has TBM instructions.
|
||||||
bool HasTBM;
|
bool HasTBM;
|
||||||
|
|
||||||
/// HasMOVBE - True if the processor has the MOVBE instruction.
|
/// True if the processor has the MOVBE instruction.
|
||||||
bool HasMOVBE;
|
bool HasMOVBE;
|
||||||
|
|
||||||
/// HasRDRAND - True if the processor has the RDRAND instruction.
|
/// True if the processor has the RDRAND instruction.
|
||||||
bool HasRDRAND;
|
bool HasRDRAND;
|
||||||
|
|
||||||
/// HasF16C - Processor has 16-bit floating point conversion instructions.
|
/// Processor has 16-bit floating point conversion instructions.
|
||||||
bool HasF16C;
|
bool HasF16C;
|
||||||
|
|
||||||
/// HasFSGSBase - Processor has FS/GS base insturctions.
|
/// Processor has FS/GS base insturctions.
|
||||||
bool HasFSGSBase;
|
bool HasFSGSBase;
|
||||||
|
|
||||||
/// HasLZCNT - Processor has LZCNT instruction.
|
/// Processor has LZCNT instruction.
|
||||||
bool HasLZCNT;
|
bool HasLZCNT;
|
||||||
|
|
||||||
/// HasBMI - Processor has BMI1 instructions.
|
/// Processor has BMI1 instructions.
|
||||||
bool HasBMI;
|
bool HasBMI;
|
||||||
|
|
||||||
/// HasBMI2 - Processor has BMI2 instructions.
|
/// Processor has BMI2 instructions.
|
||||||
bool HasBMI2;
|
bool HasBMI2;
|
||||||
|
|
||||||
/// HasRTM - Processor has RTM instructions.
|
/// Processor has RTM instructions.
|
||||||
bool HasRTM;
|
bool HasRTM;
|
||||||
|
|
||||||
/// HasHLE - Processor has HLE.
|
/// Processor has HLE.
|
||||||
bool HasHLE;
|
bool HasHLE;
|
||||||
|
|
||||||
/// HasADX - Processor has ADX instructions.
|
/// Processor has ADX instructions.
|
||||||
bool HasADX;
|
bool HasADX;
|
||||||
|
|
||||||
/// HasSHA - Processor has SHA instructions.
|
/// Processor has SHA instructions.
|
||||||
bool HasSHA;
|
bool HasSHA;
|
||||||
|
|
||||||
/// HasSGX - Processor has SGX instructions.
|
/// Processor has SGX instructions.
|
||||||
bool HasSGX;
|
bool HasSGX;
|
||||||
|
|
||||||
/// HasPRFCHW - Processor has PRFCHW instructions.
|
/// Processor has PRFCHW instructions.
|
||||||
bool HasPRFCHW;
|
bool HasPRFCHW;
|
||||||
|
|
||||||
/// HasRDSEED - Processor has RDSEED instructions.
|
/// Processor has RDSEED instructions.
|
||||||
bool HasRDSEED;
|
bool HasRDSEED;
|
||||||
|
|
||||||
/// HasSMAP - Processor has SMAP instructions.
|
/// Processor has SMAP instructions.
|
||||||
bool HasSMAP;
|
bool HasSMAP;
|
||||||
|
|
||||||
/// IsBTMemSlow - True if BT (bit test) of memory instructions are slow.
|
/// True if BT (bit test) of memory instructions are slow.
|
||||||
bool IsBTMemSlow;
|
bool IsBTMemSlow;
|
||||||
|
|
||||||
/// IsSHLDSlow - True if SHLD instructions are slow.
|
/// True if SHLD instructions are slow.
|
||||||
bool IsSHLDSlow;
|
bool IsSHLDSlow;
|
||||||
|
|
||||||
/// IsUAMemFast - True if unaligned memory access is fast.
|
/// True if unaligned memory access is fast.
|
||||||
bool IsUAMemFast;
|
bool IsUAMemFast;
|
||||||
|
|
||||||
/// True if unaligned 32-byte memory accesses are slow.
|
/// True if unaligned 32-byte memory accesses are slow.
|
||||||
|
@ -166,37 +162,38 @@ protected:
|
||||||
/// This may require setting a configuration bit in the processor.
|
/// This may require setting a configuration bit in the processor.
|
||||||
bool HasSSEUnalignedMem;
|
bool HasSSEUnalignedMem;
|
||||||
|
|
||||||
/// HasCmpxchg16b - True if this processor has the CMPXCHG16B instruction;
|
/// True if this processor has the CMPXCHG16B instruction;
|
||||||
/// this is true for most x86-64 chips, but not the first AMD chips.
|
/// this is true for most x86-64 chips, but not the first AMD chips.
|
||||||
bool HasCmpxchg16b;
|
bool HasCmpxchg16b;
|
||||||
|
|
||||||
/// UseLeaForSP - True if the LEA instruction should be used for adjusting
|
/// True if the LEA instruction should be used for adjusting
|
||||||
/// the stack pointer. This is an optimization for Intel Atom processors.
|
/// the stack pointer. This is an optimization for Intel Atom processors.
|
||||||
bool UseLeaForSP;
|
bool UseLeaForSP;
|
||||||
|
|
||||||
/// HasSlowDivide32 - True if 8-bit divisions are significantly faster than
|
/// True if 8-bit divisions are significantly faster than
|
||||||
/// 32-bit divisions and should be used when possible.
|
/// 32-bit divisions and should be used when possible.
|
||||||
bool HasSlowDivide32;
|
bool HasSlowDivide32;
|
||||||
|
|
||||||
/// HasSlowDivide64 - True if 16-bit divides are significantly faster than
|
/// True if 16-bit divides are significantly faster than
|
||||||
/// 64-bit divisions and should be used when possible.
|
/// 64-bit divisions and should be used when possible.
|
||||||
bool HasSlowDivide64;
|
bool HasSlowDivide64;
|
||||||
|
|
||||||
/// PadShortFunctions - True if the short functions should be padded to prevent
|
/// True if the short functions should be padded to prevent
|
||||||
/// a stall when returning too early.
|
/// a stall when returning too early.
|
||||||
bool PadShortFunctions;
|
bool PadShortFunctions;
|
||||||
|
|
||||||
/// CallRegIndirect - True if the Calls with memory reference should be converted
|
/// True if the Calls with memory reference should be converted
|
||||||
/// to a register-based indirect call.
|
/// to a register-based indirect call.
|
||||||
bool CallRegIndirect;
|
bool CallRegIndirect;
|
||||||
/// LEAUsesAG - True if the LEA instruction inputs have to be ready at
|
|
||||||
/// address generation (AG) time.
|
/// True if the LEA instruction inputs have to be ready at address generation
|
||||||
|
/// (AG) time.
|
||||||
bool LEAUsesAG;
|
bool LEAUsesAG;
|
||||||
|
|
||||||
/// SlowLEA - True if the LEA instruction with certain arguments is slow
|
/// True if the LEA instruction with certain arguments is slow
|
||||||
bool SlowLEA;
|
bool SlowLEA;
|
||||||
|
|
||||||
/// SlowIncDec - True if INC and DEC instructions are slow when writing to flags
|
/// True if INC and DEC instructions are slow when writing to flags
|
||||||
bool SlowIncDec;
|
bool SlowIncDec;
|
||||||
|
|
||||||
/// Use the RSQRT* instructions to optimize square root calculations.
|
/// Use the RSQRT* instructions to optimize square root calculations.
|
||||||
|
@ -227,7 +224,7 @@ protected:
|
||||||
/// Processor has AVX-512 Vector Length eXtenstions
|
/// Processor has AVX-512 Vector Length eXtenstions
|
||||||
bool HasVLX;
|
bool HasVLX;
|
||||||
|
|
||||||
/// stackAlignment - The minimum alignment known to hold of the stack frame on
|
/// The minimum alignment known to hold of the stack frame on
|
||||||
/// entry to the function and which must be maintained by every function.
|
/// entry to the function and which must be maintained by every function.
|
||||||
unsigned stackAlignment;
|
unsigned stackAlignment;
|
||||||
|
|
||||||
|
@ -235,7 +232,7 @@ protected:
|
||||||
///
|
///
|
||||||
unsigned MaxInlineSizeThreshold;
|
unsigned MaxInlineSizeThreshold;
|
||||||
|
|
||||||
/// TargetTriple - What processor and OS we're targeting.
|
/// What processor and OS we're targeting.
|
||||||
Triple TargetTriple;
|
Triple TargetTriple;
|
||||||
|
|
||||||
/// Instruction itineraries for scheduling
|
/// Instruction itineraries for scheduling
|
||||||
|
@ -243,16 +240,16 @@ protected:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
/// StackAlignOverride - Override the stack alignment.
|
/// Override the stack alignment.
|
||||||
unsigned StackAlignOverride;
|
unsigned StackAlignOverride;
|
||||||
|
|
||||||
/// In64BitMode - True if compiling for 64-bit, false for 16-bit or 32-bit.
|
/// True if compiling for 64-bit, false for 16-bit or 32-bit.
|
||||||
bool In64BitMode;
|
bool In64BitMode;
|
||||||
|
|
||||||
/// In32BitMode - True if compiling for 32-bit, false for 16-bit or 64-bit.
|
/// True if compiling for 32-bit, false for 16-bit or 64-bit.
|
||||||
bool In32BitMode;
|
bool In32BitMode;
|
||||||
|
|
||||||
/// In16BitMode - True if compiling for 16-bit, false for 32-bit or 64-bit.
|
/// True if compiling for 16-bit, false for 32-bit or 64-bit.
|
||||||
bool In16BitMode;
|
bool In16BitMode;
|
||||||
|
|
||||||
X86SelectionDAGInfo TSInfo;
|
X86SelectionDAGInfo TSInfo;
|
||||||
|
@ -284,12 +281,12 @@ public:
|
||||||
return &getInstrInfo()->getRegisterInfo();
|
return &getInstrInfo()->getRegisterInfo();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// getStackAlignment - Returns the minimum alignment known to hold of the
|
/// Returns the minimum alignment known to hold of the
|
||||||
/// stack frame on entry to the function and which must be maintained by every
|
/// stack frame on entry to the function and which must be maintained by every
|
||||||
/// function for this subtarget.
|
/// function for this subtarget.
|
||||||
unsigned getStackAlignment() const { return stackAlignment; }
|
unsigned getStackAlignment() const { return stackAlignment; }
|
||||||
|
|
||||||
/// getMaxInlineSizeThreshold - Returns the maximum memset / memcpy size
|
/// Returns the maximum memset / memcpy size
|
||||||
/// that still makes it profitable to inline the call.
|
/// that still makes it profitable to inline the call.
|
||||||
unsigned getMaxInlineSizeThreshold() const { return MaxInlineSizeThreshold; }
|
unsigned getMaxInlineSizeThreshold() const { return MaxInlineSizeThreshold; }
|
||||||
|
|
||||||
|
@ -298,7 +295,7 @@ public:
|
||||||
void ParseSubtargetFeatures(StringRef CPU, StringRef FS);
|
void ParseSubtargetFeatures(StringRef CPU, StringRef FS);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/// \brief Initialize the full set of dependencies so we can use an initializer
|
/// Initialize the full set of dependencies so we can use an initializer
|
||||||
/// list for X86Subtarget.
|
/// list for X86Subtarget.
|
||||||
X86Subtarget &initializeSubtargetDependencies(StringRef CPU, StringRef FS);
|
X86Subtarget &initializeSubtargetDependencies(StringRef CPU, StringRef FS);
|
||||||
void initializeEnvironment();
|
void initializeEnvironment();
|
||||||
|
@ -473,13 +470,11 @@ public:
|
||||||
unsigned char ClassifyGlobalReference(const GlobalValue *GV,
|
unsigned char ClassifyGlobalReference(const GlobalValue *GV,
|
||||||
const TargetMachine &TM)const;
|
const TargetMachine &TM)const;
|
||||||
|
|
||||||
/// ClassifyBlockAddressReference - Classify a blockaddress reference for the
|
/// Classify a blockaddress reference for the current subtarget according to
|
||||||
/// current subtarget according to how we should reference it in a non-pcrel
|
/// how we should reference it in a non-pcrel context.
|
||||||
/// context.
|
|
||||||
unsigned char ClassifyBlockAddressReference() const;
|
unsigned char ClassifyBlockAddressReference() const;
|
||||||
|
|
||||||
/// IsLegalToCallImmediateAddr - Return true if the subtarget allows calls
|
/// Return true if the subtarget allows calls to immediate address.
|
||||||
/// to immediate address.
|
|
||||||
bool IsLegalToCallImmediateAddr(const TargetMachine &TM) const;
|
bool IsLegalToCallImmediateAddr(const TargetMachine &TM) const;
|
||||||
|
|
||||||
/// This function returns the name of a function which has an interface
|
/// This function returns the name of a function which has an interface
|
||||||
|
@ -498,8 +493,7 @@ public:
|
||||||
|
|
||||||
bool enableEarlyIfConversion() const override;
|
bool enableEarlyIfConversion() const override;
|
||||||
|
|
||||||
/// getInstrItins = Return the instruction itineraries based on the
|
/// Return the instruction itineraries based on the subtarget selection.
|
||||||
/// subtarget selection.
|
|
||||||
const InstrItineraryData *getInstrItineraryData() const override {
|
const InstrItineraryData *getInstrItineraryData() const override {
|
||||||
return &InstrItins;
|
return &InstrItins;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue