diff options
Diffstat (limited to 'llvm/lib/Target/X86/X86OptimizeLEAs.cpp')
| -rw-r--r-- | llvm/lib/Target/X86/X86OptimizeLEAs.cpp | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/llvm/lib/Target/X86/X86OptimizeLEAs.cpp b/llvm/lib/Target/X86/X86OptimizeLEAs.cpp index 1114acbc3c7..5a7b562cb1d 100644 --- a/llvm/lib/Target/X86/X86OptimizeLEAs.cpp +++ b/llvm/lib/Target/X86/X86OptimizeLEAs.cpp @@ -60,12 +60,6 @@ static inline bool isIdenticalOp(const MachineOperand &MO1, static bool isSimilarDispOp(const MachineOperand &MO1, const MachineOperand &MO2); -/// \brief Returns true if the type of \p MO is valid for address displacement -/// operand. According to X86DAGToDAGISel::getAddressOperands allowed types are: -/// MO_Immediate, MO_ConstantPoolIndex, MO_JumpTableIndex, MO_ExternalSymbol, -/// MO_GlobalAddress, MO_BlockAddress or MO_MCSymbol. -static inline bool isValidDispOp(const MachineOperand &MO); - /// \brief Returns true if the instruction is LEA. static inline bool isLEA(const MachineInstr &MI); @@ -188,6 +182,13 @@ static inline bool isIdenticalOp(const MachineOperand &MO1, !TargetRegisterInfo::isPhysicalRegister(MO1.getReg())); } +#ifndef NDEBUG +static bool isValidDispOp(const MachineOperand &MO) { + return MO.isImm() || MO.isCPI() || MO.isJTI() || MO.isSymbol() || + MO.isGlobal() || MO.isBlockAddress() || MO.isMCSymbol(); +} +#endif + static bool isSimilarDispOp(const MachineOperand &MO1, const MachineOperand &MO2) { assert(isValidDispOp(MO1) && isValidDispOp(MO2) && @@ -205,11 +206,6 @@ static bool isSimilarDispOp(const MachineOperand &MO1, MO1.getMCSymbol() == MO2.getMCSymbol()); } -static inline bool isValidDispOp(const MachineOperand &MO) { - return MO.isImm() || MO.isCPI() || MO.isJTI() || MO.isSymbol() || - MO.isGlobal() || MO.isBlockAddress() || MO.isMCSymbol(); -} - static inline bool isLEA(const MachineInstr &MI) { unsigned Opcode = MI.getOpcode(); return Opcode == X86::LEA16r || Opcode == X86::LEA32r || |

