Lines Matching defs:Addr

52   bool SelectFrameADDR_ri(SDValue Addr, SDValue &Base, SDValue &Offset);
53 bool SelectAddrModeS9(SDValue Addr, SDValue &Base, SDValue &Offset);
54 bool SelectAddrModeImm(SDValue Addr, SDValue &Base, SDValue &Offset);
55 bool SelectAddrModeFar(SDValue Addr, SDValue &Base, SDValue &Offset);
82 bool ARCDAGToDAGISel::SelectAddrModeImm(SDValue Addr, SDValue &Base,
84 if (Addr.getOpcode() == ARCISD::GAWRAPPER) {
85 Base = Addr.getOperand(0);
86 Offset = CurDAG->getTargetConstant(0, SDLoc(Addr), MVT::i32);
92 bool ARCDAGToDAGISel::SelectAddrModeS9(SDValue Addr, SDValue &Base,
94 if (Addr.getOpcode() == ARCISD::GAWRAPPER) {
98 if (Addr.getOpcode() != ISD::ADD && Addr.getOpcode() != ISD::SUB &&
99 !CurDAG->isBaseWithConstantOffset(Addr)) {
100 if (Addr.getOpcode() == ISD::FrameIndex) {
102 int FI = cast<FrameIndexSDNode>(Addr)->getIndex();
106 Base = Addr;
108 Offset = CurDAG->getTargetConstant(0, SDLoc(Addr), MVT::i32);
112 if (ConstantSDNode *RHS = dyn_cast<ConstantSDNode>(Addr.getOperand(1))) {
114 if (Addr.getOpcode() == ISD::SUB)
120 Base = Addr.getOperand(0);
126 Offset = CurDAG->getTargetConstant(RHSC, SDLoc(Addr), MVT::i32);
129 Base = Addr;
130 Offset = CurDAG->getTargetConstant(0, SDLoc(Addr), MVT::i32);
134 bool ARCDAGToDAGISel::SelectAddrModeFar(SDValue Addr, SDValue &Base,
136 if (SelectAddrModeS9(Addr, Base, Offset))
138 if (Addr.getOpcode() == ARCISD::GAWRAPPER) {
141 if (ConstantSDNode *RHS = dyn_cast<ConstantSDNode>(Addr.getOperand(1))) {
143 if (Addr.getOpcode() == ISD::SUB)
145 Base = Addr.getOperand(0);
146 Offset = CurDAG->getTargetConstant(RHSC, SDLoc(Addr), MVT::i32);
153 bool ARCDAGToDAGISel::SelectFrameADDR_ri(SDValue Addr, SDValue &Base,
156 if ((FIN = dyn_cast<FrameIndexSDNode>(Addr))) {
158 Offset = CurDAG->getTargetConstant(0, SDLoc(Addr), MVT::i32);
161 if (Addr.getOpcode() == ISD::ADD) {
163 if ((FIN = dyn_cast<FrameIndexSDNode>(Addr.getOperand(0))) &&
164 (CN = dyn_cast<ConstantSDNode>(Addr.getOperand(1))) &&
169 CurDAG->getTargetConstant(CN->getSExtValue(), SDLoc(Addr), MVT::i32);