Lines Matching refs:Scale
2733 AM.Scale = 0; in getAddrModeFromMemoryOp()
2882 AM.Scale = OffsetScale; in canFoldIntoAddrMode()
2913 AM.Scale = OffsetScale; in canFoldIntoAddrMode()
2957 AM.Scale = 0; in canFoldIntoAddrMode()
2964 [&](int64_t Scale, in canFoldIntoAddrMode()
2968 if (!isLegalAddressingMode(NumBytes, /* Offset */ 0, Scale)) in canFoldIntoAddrMode()
2972 AM.Scale = Scale; in canFoldIntoAddrMode()
3140 unsigned scaledOffsetOpcode(unsigned Opcode, unsigned &Scale) { in scaledOffsetOpcode() argument
3146 Scale = 16; in scaledOffsetOpcode()
3149 Scale = 16; in scaledOffsetOpcode()
3152 Scale = 8; in scaledOffsetOpcode()
3155 Scale = 8; in scaledOffsetOpcode()
3158 Scale = 8; in scaledOffsetOpcode()
3161 Scale = 8; in scaledOffsetOpcode()
3164 Scale = 4; in scaledOffsetOpcode()
3167 Scale = 4; in scaledOffsetOpcode()
3170 Scale = 4; in scaledOffsetOpcode()
3173 Scale = 2; in scaledOffsetOpcode()
3176 Scale = 2; in scaledOffsetOpcode()
3179 Scale = 2; in scaledOffsetOpcode()
3182 Scale = 2; in scaledOffsetOpcode()
3185 Scale = 2; in scaledOffsetOpcode()
3188 Scale = 2; in scaledOffsetOpcode()
3191 Scale = 1; in scaledOffsetOpcode()
3194 Scale = 1; in scaledOffsetOpcode()
3197 Scale = 1; in scaledOffsetOpcode()
3200 Scale = 1; in scaledOffsetOpcode()
3203 Scale = 1; in scaledOffsetOpcode()
3206 Scale = 1; in scaledOffsetOpcode()
3210 Scale = 16; in scaledOffsetOpcode()
3216 Scale = 8; in scaledOffsetOpcode()
3221 Scale = 4; in scaledOffsetOpcode()
3229 Scale = 2; in scaledOffsetOpcode()
3237 Scale = 1; in scaledOffsetOpcode()
3431 .addImm(AM.Scale > 1) in emitLdStWithAddr()
3437 assert(AM.ScaledReg == 0 && AM.Scale == 0 && in emitLdStWithAddr()
3441 unsigned Scale = 1; in emitLdStWithAddr() local
3446 Opcode = scaledOffsetOpcode(Opcode, Scale); in emitLdStWithAddr()
3452 .addImm(AM.Displacement / Scale) in emitLdStWithAddr()
3479 .addImm(AM.Scale != 1) in emitLdStWithAddr()
3512 TypeSize Scale(0U, false); in getMemOperandWithOffsetWidth() local
3516 if (!getMemOpInfo(LdSt.getOpcode(), Scale, Width, Dummy1, Dummy2)) in getMemOperandWithOffsetWidth()
3524 Offset = LdSt.getOperand(2).getImm() * Scale.getKnownMinValue(); in getMemOperandWithOffsetWidth()
3528 Offset = LdSt.getOperand(3).getImm() * Scale.getKnownMinValue(); in getMemOperandWithOffsetWidth()
3530 OffsetIsScalable = Scale.isScalable(); in getMemOperandWithOffsetWidth()
3546 bool AArch64InstrInfo::getMemOpInfo(unsigned Opcode, TypeSize &Scale, in getMemOpInfo() argument
3552 Scale = TypeSize::getFixed(0); in getMemOpInfo()
3559 Scale = TypeSize::getFixed(16); in getMemOpInfo()
3569 Scale = TypeSize::getFixed(8); in getMemOpInfo()
3579 Scale = TypeSize::getFixed(4); in getMemOpInfo()
3590 Scale = TypeSize::getFixed(2); in getMemOpInfo()
3601 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3609 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3618 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3625 Scale = TypeSize::getFixed(4); in getMemOpInfo()
3633 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3645 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3658 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3673 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3688 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3698 Scale = TypeSize::getFixed(16); in getMemOpInfo()
3711 Scale = TypeSize::getFixed(8); in getMemOpInfo()
3724 Scale = TypeSize::getFixed(4); in getMemOpInfo()
3732 Scale = TypeSize::getFixed(16); in getMemOpInfo()
3741 Scale = TypeSize::getFixed(8); in getMemOpInfo()
3748 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3754 Scale = TypeSize::getFixed(16); in getMemOpInfo()
3760 Scale = TypeSize::getFixed(16); in getMemOpInfo()
3770 Scale = TypeSize::getFixed(16); in getMemOpInfo()
3778 Scale = TypeSize::getScalable(16); in getMemOpInfo()
3785 Scale = TypeSize::getScalable(16); in getMemOpInfo()
3792 Scale = TypeSize::getScalable(16); in getMemOpInfo()
3799 Scale = TypeSize::getScalable(2); in getMemOpInfo()
3806 Scale = TypeSize::getScalable(2); in getMemOpInfo()
3813 Scale = TypeSize::getScalable(16); in getMemOpInfo()
3840 Scale = TypeSize::getScalable(16); in getMemOpInfo()
3853 Scale = TypeSize::getScalable(32); in getMemOpInfo()
3866 Scale = TypeSize::getScalable(48); in getMemOpInfo()
3879 Scale = TypeSize::getScalable(64); in getMemOpInfo()
3901 Scale = TypeSize::getScalable(8); in getMemOpInfo()
3918 Scale = TypeSize::getScalable(4); in getMemOpInfo()
3930 Scale = TypeSize::getScalable(2); in getMemOpInfo()
3937 Scale = TypeSize::getFixed(16); in getMemOpInfo()
3943 Scale = TypeSize::getFixed(16); in getMemOpInfo()
3955 Scale = TypeSize::getFixed(1); in getMemOpInfo()
3965 Scale = TypeSize::getFixed(2); in getMemOpInfo()
3973 Scale = TypeSize::getFixed(4); in getMemOpInfo()
3979 Scale = TypeSize::getFixed(8); in getMemOpInfo()
4224 int Scale = AArch64InstrInfo::getMemScale(Opc); in scaleOffset() local
4228 if (Offset % Scale != 0) in scaleOffset()
4233 Offset /= Scale; in scaleOffset()
5716 unsigned Scale = ScaleValue.getKnownMinValue(); in isAArch64FrameOffsetLegal() local
5721 Offset += ImmOpnd.getImm() * Scale; in isAArch64FrameOffsetLegal()
5728 bool useUnscaledOp = UnscaledOp && (Offset % Scale || Offset < 0); in isAArch64FrameOffsetLegal()
5734 Scale = ScaleValue.getKnownMinValue(); in isAArch64FrameOffsetLegal()
5738 int64_t Remainder = Offset % Scale; in isAArch64FrameOffsetLegal()
5743 int64_t NewOffset = Offset / Scale; in isAArch64FrameOffsetLegal()
5748 Offset = Offset - (NewOffset * Scale); in isAArch64FrameOffsetLegal()
8484 TypeSize Scale(0U, false), DummyWidth(0U, false); in getOutliningCandidateInfo() local
8485 getMemOpInfo(MI.getOpcode(), Scale, DummyWidth, MinOffset, MaxOffset); in getOutliningCandidateInfo()
8488 if (Offset < MinOffset * (int64_t)Scale.getFixedValue() || in getOutliningCandidateInfo()
8489 Offset > MaxOffset * (int64_t)Scale.getFixedValue()) in getOutliningCandidateInfo()
9025 TypeSize Scale(0U, false); in fixupPostOutline() local
9030 getMemOpInfo(MI.getOpcode(), Scale, Width, Dummy1, Dummy2); in fixupPostOutline()
9031 assert(Scale != 0 && "Unexpected opcode!"); in fixupPostOutline()
9037 int64_t NewImm = (Offset + 16) / (int64_t)Scale.getFixedValue(); in fixupPostOutline()
9508 unsigned Scale) const { in isLegalAddressingMode()
9509 if (Offset && Scale) in isLegalAddressingMode()
9513 if (!Scale) { in isLegalAddressingMode()
9528 return Scale == 1 || (Scale > 0 && Scale == NumBytes); in isLegalAddressingMode()