Lines Matching refs:AM

152   bool expandAddress(SystemZAddressingMode &AM, bool IsBase) const;
155 bool selectAddress(SDValue N, SystemZAddressingMode &AM) const;
158 void getAddressOperands(const SystemZAddressingMode &AM, EVT VT,
160 void getAddressOperands(const SystemZAddressingMode &AM, EVT VT,
393 static void changeComponent(SystemZAddressingMode &AM, bool IsBase, in changeComponent() argument
396 AM.Base = Value; in changeComponent()
398 AM.Index = Value; in changeComponent()
404 static bool expandAdjDynAlloc(SystemZAddressingMode &AM, bool IsBase, in expandAdjDynAlloc() argument
406 if (AM.isDynAlloc() && !AM.IncludesDynAlloc) { in expandAdjDynAlloc()
407 changeComponent(AM, IsBase, Value); in expandAdjDynAlloc()
408 AM.IncludesDynAlloc = true; in expandAdjDynAlloc()
416 static bool expandIndex(SystemZAddressingMode &AM, SDValue Base, in expandIndex() argument
418 if (AM.hasIndexField() && !AM.Index.getNode()) { in expandIndex()
419 AM.Base = Base; in expandIndex()
420 AM.Index = Index; in expandIndex()
428 static bool expandDisp(SystemZAddressingMode &AM, bool IsBase, in expandDisp() argument
431 int64_t TestDisp = AM.Disp + Op1; in expandDisp()
432 if (selectDisp(AM.DR, TestDisp)) { in expandDisp()
433 changeComponent(AM, IsBase, Op0); in expandDisp()
434 AM.Disp = TestDisp; in expandDisp()
443 bool SystemZDAGToDAGISel::expandAddress(SystemZAddressingMode &AM, in expandAddress() argument
445 SDValue N = IsBase ? AM.Base : AM.Index; in expandAddress()
459 return expandAdjDynAlloc(AM, IsBase, Op1); in expandAddress()
461 return expandAdjDynAlloc(AM, IsBase, Op0); in expandAddress()
464 return expandDisp(AM, IsBase, Op1, in expandAddress()
467 return expandDisp(AM, IsBase, Op0, in expandAddress()
470 if (IsBase && expandIndex(AM, Op0, Op1)) in expandAddress()
479 return expandDisp(AM, IsBase, Base, Offset); in expandAddress()
559 SystemZAddressingMode &AM) const { in selectAddress()
562 AM.Base = Addr; in selectAddress()
566 expandDisp(AM, true, SDValue(), in selectAddress()
571 expandAdjDynAlloc(AM, true, SDValue())) in selectAddress()
575 while (expandAddress(AM, true) || in selectAddress()
576 (AM.Index.getNode() && expandAddress(AM, false))) in selectAddress()
580 if (AM.Form == SystemZAddressingMode::FormBDXLA && in selectAddress()
581 !shouldUseLA(AM.Base.getNode(), AM.Disp, AM.Index.getNode())) in selectAddress()
585 if (!isValidDisp(AM.DR, AM.Disp)) in selectAddress()
589 if (AM.isDynAlloc() && !AM.IncludesDynAlloc) in selectAddress()
592 LLVM_DEBUG(AM.dump(CurDAG)); in selectAddress()
615 void SystemZDAGToDAGISel::getAddressOperands(const SystemZAddressingMode &AM, in getAddressOperands() argument
618 Base = AM.Base; in getAddressOperands()
637 Disp = CurDAG->getTargetConstant(AM.Disp, SDLoc(Base), VT); in getAddressOperands()
640 void SystemZDAGToDAGISel::getAddressOperands(const SystemZAddressingMode &AM, in getAddressOperands() argument
644 getAddressOperands(AM, VT, Base, Disp); in getAddressOperands()
646 Index = AM.Index; in getAddressOperands()
655 SystemZAddressingMode AM(SystemZAddressingMode::FormBD, DR); in selectBDAddr() local
656 if (!selectAddress(Addr, AM)) in selectBDAddr()
659 getAddressOperands(AM, Addr.getValueType(), Base, Disp); in selectBDAddr()
666 SystemZAddressingMode AM(SystemZAddressingMode::FormBDXNormal, DR); in selectMVIAddr() local
667 if (!selectAddress(Addr, AM) || AM.Index.getNode()) in selectMVIAddr()
670 getAddressOperands(AM, Addr.getValueType(), Base, Disp); in selectMVIAddr()
678 SystemZAddressingMode AM(Form, DR); in selectBDXAddr() local
679 if (!selectAddress(Addr, AM)) in selectBDXAddr()
682 getAddressOperands(AM, Addr.getValueType(), Base, Disp, Index); in selectBDXAddr()