Changeset View
Changeset View
Standalone View
Standalone View
llvm/trunk/lib/Target/X86/X86Subtarget.h
Show First 20 Lines • Show All 209 Lines • ▼ Show 20 Lines | protected: | ||||
/// 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; | ||||
/// 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; | ||||
/// True if LZCNT instruction is fast. | |||||
bool HasFastLZCNT; | |||||
/// 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; | ||||
/// 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; | ||||
▲ Show 20 Lines • Show All 213 Lines • ▼ Show 20 Lines | public: | ||||
bool isUnalignedMem16Slow() const { return IsUAMem16Slow; } | bool isUnalignedMem16Slow() const { return IsUAMem16Slow; } | ||||
bool isUnalignedMem32Slow() const { return IsUAMem32Slow; } | bool isUnalignedMem32Slow() const { return IsUAMem32Slow; } | ||||
bool hasSSEUnalignedMem() const { return HasSSEUnalignedMem; } | bool hasSSEUnalignedMem() const { return HasSSEUnalignedMem; } | ||||
bool hasCmpxchg16b() const { return HasCmpxchg16b; } | bool hasCmpxchg16b() const { return HasCmpxchg16b; } | ||||
bool useLeaForSP() const { return UseLeaForSP; } | bool useLeaForSP() const { return UseLeaForSP; } | ||||
bool hasFastPartialYMMWrite() const { return HasFastPartialYMMWrite; } | bool hasFastPartialYMMWrite() const { return HasFastPartialYMMWrite; } | ||||
bool hasFastScalarFSQRT() const { return HasFastScalarFSQRT; } | bool hasFastScalarFSQRT() const { return HasFastScalarFSQRT; } | ||||
bool hasFastVectorFSQRT() const { return HasFastVectorFSQRT; } | bool hasFastVectorFSQRT() const { return HasFastVectorFSQRT; } | ||||
bool hasFastLZCNT() const { return HasFastLZCNT; } | |||||
bool hasSlowDivide32() const { return HasSlowDivide32; } | bool hasSlowDivide32() const { return HasSlowDivide32; } | ||||
bool hasSlowDivide64() const { return HasSlowDivide64; } | bool hasSlowDivide64() const { return HasSlowDivide64; } | ||||
bool padShortFunctions() const { return PadShortFunctions; } | bool padShortFunctions() const { return PadShortFunctions; } | ||||
bool callRegIndirect() const { return CallRegIndirect; } | bool callRegIndirect() const { return CallRegIndirect; } | ||||
bool LEAusesAG() const { return LEAUsesAG; } | bool LEAusesAG() const { return LEAUsesAG; } | ||||
bool slowLEA() const { return SlowLEA; } | bool slowLEA() const { return SlowLEA; } | ||||
bool slowIncDec() const { return SlowIncDec; } | bool slowIncDec() const { return SlowIncDec; } | ||||
bool hasCDI() const { return HasCDI; } | bool hasCDI() const { return HasCDI; } | ||||
▲ Show 20 Lines • Show All 157 Lines • Show Last 20 Lines |