diff options
| -rw-r--r-- | llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp index c84d3ff8132..f4012c71d7e 100644 --- a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp +++ b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp @@ -36,6 +36,11 @@  using namespace llvm; +static cl::opt<bool> +DisableShifterOp("disable-shifter-op", cl::Hidden, +  cl::desc("Disable isel of shifter-op"), +  cl::init(false)); +  //===--------------------------------------------------------------------===//  /// ARMDAGToDAGISel - ARM specific code to select ARM machine  /// instructions for SelectionDAG operations. @@ -220,6 +225,9 @@ bool ARMDAGToDAGISel::SelectShifterOperandReg(SDNode *Op,                                                SDValue &BaseReg,                                                SDValue &ShReg,                                                SDValue &Opc) { +  if (DisableShifterOp) +    return false; +    ARM_AM::ShiftOpc ShOpcVal = ARM_AM::getShiftOpcForNode(N);    // Don't match base register only case. That is matched to a separate @@ -666,6 +674,9 @@ bool ARMDAGToDAGISel::SelectThumbAddrModeSP(SDNode *Op, SDValue N,  bool ARMDAGToDAGISel::SelectT2ShifterOperandReg(SDNode *Op, SDValue N,                                                  SDValue &BaseReg,                                                  SDValue &Opc) { +  if (DisableShifterOp) +    return false; +    ARM_AM::ShiftOpc ShOpcVal = ARM_AM::getShiftOpcForNode(N);    // Don't match base register only case. That is matched to a separate  | 

