Home
last modified time | relevance | path

Searched refs:getSubReg (Results 1 – 25 of 145) sorted by relevance

123456

/freebsd-13.1/contrib/llvm-project/llvm/lib/CodeGen/
H A DPeepholeOptimizer.cpp514 if (UseSrcSubIdx && UseMO.getSubReg() != SubIdx) in INITIALIZE_PASS_DEPENDENCY()
954 if (MODef.getSubReg()) in getNextRewritableSource()
997 if (MOExtractedReg.getSubReg()) in getNextRewritableSource()
1074 if ((Src.SubReg = MOInsertedReg.getSubReg())) in getNextRewritableSource()
1084 return MODef.getSubReg() == 0; in getNextRewritableSource()
1855 if (DefOp.getSubReg() != DefSubReg) in getNextSourceFromBitcast()
1898 if (Def->getOperand(DefIdx).getSubReg()) in getNextSourceFromRegSequence()
1942 if (Def->getOperand(DefIdx).getSubReg()) in getNextSourceFromInsertSubreg()
2033 if (Def->getOperand(2).getSubReg()) in getNextSourceFromSubregToReg()
2047 if (Def->getOperand(0).getSubReg() != DefSubReg) in getNextSourceFromPHI()
[all …]
H A DDetectDeadLanes.cpp159 unsigned SrcSubIdx = MO.getSubReg(); in isCrossCopy()
198 unsigned MOSubReg = MO.getSubReg(); in addUsedLanesOnOperand()
294 TRI->reverseComposeSubRegIndexLaneMask(Use.getSubReg(), DefinedLanes); in transferDefinedLanesStep()
343 assert(Def.getSubReg() == 0 && in transferDefinedLanes()
395 unsigned MOSubReg = MO.getSubReg(); in determineInitialDefinedLanes()
409 assert(Def.getSubReg() == 0 && in determineInitialDefinedLanes()
424 unsigned SubReg = MO.getSubReg(); in determineInitialUsedLanes()
457 unsigned SubReg = MO.getSubReg(); in isUndefRegAtInput()
H A DCalcSpillWeights.cpp52 Sub = MI->getOperand(0).getSubReg(); in copyHint()
54 HSub = MI->getOperand(1).getSubReg(); in copyHint()
56 Sub = MI->getOperand(1).getSubReg(); in copyHint()
58 HSub = MI->getOperand(0).getSubReg(); in copyHint()
68 MCRegister CopiedPReg = HSub ? TRI.getSubReg(HReg, HSub) : HReg.asMCReg(); in copyHint()
H A DTargetInstrInfo.cpp187 unsigned SubReg0 = HasDef ? MI.getOperand(0).getSubReg() : 0; in commuteInstructionImpl()
188 unsigned SubReg1 = MI.getOperand(Idx1).getSubReg(); in commuteInstructionImpl()
189 unsigned SubReg2 = MI.getOperand(Idx2).getSubReg(); in commuteInstructionImpl()
454 if (FoldOp.getSubReg() || LiveOp.getSubReg()) in canFoldCopy()
540 TII.getStackSlotRange(RC, MO.getSubReg(), SpillSize, SpillOffset, MF); in foldPatchpoint()
586 if (auto SubReg = MI.getOperand(OpIdx).getSubReg()) { in foldMemoryOperand()
932 if (Register::isVirtualRegister(DefReg) && MI.getOperand(0).getSubReg() && in isReallyTriviallyReMaterializableGeneric()
1304 InputRegs.push_back(RegSubRegPairAndIdx(MOReg.getReg(), MOReg.getSubReg(), in getRegSequenceInputs()
1330 InputReg.SubReg = MOReg.getSubReg(); in getExtractSubregInputs()
1355 BaseReg.SubReg = MOBaseReg.getSubReg(); in getInsertSubregInputs()
[all …]
H A DRegAllocFast.cpp849 unsigned SubRegIdx = MO.getSubReg(); in allocVirtRegUndef()
851 PhysReg = TRI->getSubReg(PhysReg, SubRegIdx); in allocVirtRegUndef()
880 if (MO.getSubReg() && !MO.isUndef()) { in defineLiveThroughVirtReg()
967 if (MI.isCopy() && MI.getOperand(1).getSubReg() == 0) { in useVirtReg()
995 if (!MO.getSubReg()) { in setPhysReg()
1002 MO.setReg(PhysReg ? TRI->getSubReg(PhysReg, MO.getSubReg()) : MCRegister()); in setPhysReg()
1137 if (MO.isTied() || (MO.getSubReg() != 0 && !MO.isUndef())) in allocateInstruction()
1221 (MO0.getSubReg() == 0 && !MO0.isUndef()); in allocateInstruction()
1238 (MO.getSubReg() && !MO.isUndef())) { in allocateInstruction()
1267 if (MO.getSubReg() != 0) { in allocateInstruction()
[all …]
H A DOptimizePHIs.cpp119 if (SrcMI && SrcMI->isCopy() && !SrcMI->getOperand(0).getSubReg() && in IsSingleValuePHICycle()
120 !SrcMI->getOperand(1).getSubReg() && in IsSingleValuePHICycle()
H A DMachineOperand.cpp80 if (SubIdx && getSubReg()) in substVirtReg()
81 SubIdx = TRI.composeSubRegIndices(SubIdx, getSubReg()); in substVirtReg()
89 if (getSubReg()) { in substPhysReg()
90 Reg = TRI.getSubReg(Reg, getSubReg()); in substPhysReg()
290 getSubReg() == Other.getSubReg(); in isIdenticalTo()
355 return hash_combine(MO.getType(), (unsigned)MO.getReg(), MO.getSubReg(), MO.isDef()); in hash_value()
781 if (unsigned SubReg = getSubReg()) { in print()
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZRegisterInfo.cpp33 MO.getSubReg() == SystemZ::subreg_l32 || in getRC32()
34 MO.getSubReg() == SystemZ::subreg_hl32) in getRC32()
37 MO.getSubReg() == SystemZ::subreg_h32 || in getRC32()
38 MO.getSubReg() == SystemZ::subreg_hh32) in getRC32()
114 if (MO->getSubReg()) in getRegAllocationHints()
115 PhysReg = getSubReg(PhysReg, MO->getSubReg()); in getRegAllocationHints()
116 if (VRRegMO->getSubReg()) in getRegAllocationHints()
117 PhysReg = getMatchingSuperReg(PhysReg, VRRegMO->getSubReg(), in getRegAllocationHints()
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCExpandAtomicPseudoInsts.cpp141 Register OldHi = TRI->getSubReg(Old, PPC::sub_gp8_x0); in expandAtomicRMW128()
142 Register OldLo = TRI->getSubReg(Old, PPC::sub_gp8_x1); in expandAtomicRMW128()
144 Register ScratchHi = TRI->getSubReg(Scratch, PPC::sub_gp8_x0); in expandAtomicRMW128()
145 Register ScratchLo = TRI->getSubReg(Scratch, PPC::sub_gp8_x1); in expandAtomicRMW128()
218 Register OldHi = TRI->getSubReg(Old, PPC::sub_gp8_x0); in expandAtomicCmpSwap128()
219 Register OldLo = TRI->getSubReg(Old, PPC::sub_gp8_x1); in expandAtomicCmpSwap128()
221 Register ScratchHi = TRI->getSubReg(Scratch, PPC::sub_gp8_x0); in expandAtomicCmpSwap128()
222 Register ScratchLo = TRI->getSubReg(Scratch, PPC::sub_gp8_x1); in expandAtomicCmpSwap128()
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/VE/
H A DVERegisterInfo.cpp166 Register SrcHiReg = getSubReg(SrcReg, VE::sub_even); in eliminateFrameIndex()
167 Register SrcLoReg = getSubReg(SrcReg, VE::sub_odd); in eliminateFrameIndex()
181 Register DestHiReg = getSubReg(DestReg, VE::sub_even); in eliminateFrameIndex()
182 Register DestLoReg = getSubReg(DestReg, VE::sub_odd); in eliminateFrameIndex()
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DR600ExpandSpecialInstrs.cpp211 Src0 = TRI.getSubReg(Src0, SubRegIndex); in runOnMachineFunction()
212 Src1 = TRI.getSubReg(Src1, SubRegIndex); in runOnMachineFunction()
217 Src1 = TRI.getSubReg(Src0, SubRegIndex1); in runOnMachineFunction()
218 Src0 = TRI.getSubReg(Src0, SubRegIndex0); in runOnMachineFunction()
226 DstReg = TRI.getSubReg(DstReg, SubRegIndex); in runOnMachineFunction()
H A DSIFoldOperands.cpp635 if (RSUse.getSubReg() != RegSeqDstSubReg) in foldOperand()
741 !UseMI->getOperand(1).getSubReg()) { in foldOperand()
924 if (UseOp.getSubReg() == AMDGPU::sub0) { in foldOperand()
927 assert(UseOp.getSubReg() == AMDGPU::sub1); in foldOperand()
1343 Src0->getSubReg() != Src1->getSubReg() || in isClamp()
1344 Src0->getSubReg() != AMDGPU::NoSubRegister) in isClamp()
1490 Src0->getSubReg() == Src1->getSubReg() && in isOMod()
1510 RegOp->getSubReg() != AMDGPU::NoSubRegister || in tryFoldOMod()
1562 while (UseMI->isCopy() && !Op->getSubReg()) { in tryFoldRegSequence()
1570 if (Op->getSubReg()) in tryFoldRegSequence()
[all …]
H A DSIFrameLowering.cpp172 Register TargetLo = TRI->getSubReg(TargetReg, AMDGPU::sub0); in buildGitPtr()
173 Register TargetHi = TRI->getSubReg(TargetReg, AMDGPU::sub1); in buildGitPtr()
235 FlatScrInitLo = TRI->getSubReg(FlatScrInit, AMDGPU::sub0); in emitEntryFunctionFlatScratchInit()
236 FlatScrInitHi = TRI->getSubReg(FlatScrInit, AMDGPU::sub1); in emitEntryFunctionFlatScratchInit()
273 FlatScrInitLo = TRI->getSubReg(FlatScratchInitReg, AMDGPU::sub0); in emitEntryFunctionFlatScratchInit()
274 FlatScrInitHi = TRI->getSubReg(FlatScratchInitReg, AMDGPU::sub1); in emitEntryFunctionFlatScratchInit()
541 Register Rsrc03 = TRI->getSubReg(ScratchRsrcReg, AMDGPU::sub3); in emitEntryFunctionScratchRsrcRegSetup()
581 Register Rsrc2 = TRI->getSubReg(ScratchRsrcReg, AMDGPU::sub2); in emitEntryFunctionScratchRsrcRegSetup()
582 Register Rsrc3 = TRI->getSubReg(ScratchRsrcReg, AMDGPU::sub3); in emitEntryFunctionScratchRsrcRegSetup()
616 Register Rsrc0 = TRI->getSubReg(ScratchRsrcReg, AMDGPU::sub0); in emitEntryFunctionScratchRsrcRegSetup()
[all …]
H A DSIShrinkInstructions.cpp405 TRI.getSubRegIndexLaneMask(MO.getSubReg()); in instAccessReg()
430 Reg = TRI.getSubReg(Reg, TRI.getSubRegFromChannel(I)); in getSubRegForIndex()
479 unsigned Tsub = MovT.getOperand(0).getSubReg(); in matchSwap()
485 unsigned Xsub = Xop.getSubReg(); in matchSwap()
510 MovY->getOperand(1).getSubReg() != Tsub || in matchSwap()
515 unsigned Ysub = MovY->getOperand(0).getSubReg(); in matchSwap()
541 I->getOperand(0).getSubReg() != Xsub) { in matchSwap()
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonSplitDouble.cpp259 if (&MO == &Op || !MO.isReg() || MO.getSubReg()) in partitionRegisters()
320 if (!Op.getSubReg()) in profit()
324 if (MI->getOperand(1).getSubReg() != 0) in profit()
443 if (Op.getSubReg()) in isProfitable()
603 unsigned SR = Op.getSubReg(); in createHalfInstr()
674 assert(!UpdOp.getSubReg() && "Def operand with subreg"); in splitMemRef()
742 .addReg(Op1.getReg(), getRegState(Op1), Op1.getSubReg()); in splitCombine()
770 .addReg(Op1.getReg(), RS, Op1.getSubReg()) in splitExt()
1077 if (!Op.isReg() || !Op.isUse() || !Op.getSubReg()) in replaceSubregUses()
1084 switch (Op.getSubReg()) { in replaceSubregUses()
[all …]
H A DHexagonRDFOpt.cpp124 assert(DstOp.getSubReg() == 0 && "Unexpected subregister"); in INITIALIZE_PASS_DEPENDENCY()
126 DFG.makeRegRef(HiOp.getReg(), HiOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY()
128 DFG.makeRegRef(LoOp.getReg(), LoOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY()
140 mapRegs(DFG.makeRegRef(DstOp.getReg(), DstOp.getSubReg()), in INITIALIZE_PASS_DEPENDENCY()
141 DFG.makeRegRef(SrcOp.getReg(), SrcOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY()
H A DHexagonAsmPrinter.cpp136 RegNumber = TRI->getSubReg(RegNumber, ExtraCode[0] == 'L' ? in PrintAsmOperand()
463 unsigned High = RI->getSubReg(MO1.getReg(), Hexagon::isub_hi); in HexagonProcessInstruction()
464 unsigned Low = RI->getSubReg(MO1.getReg(), Hexagon::isub_lo); in HexagonProcessInstruction()
540 unsigned High = RI->getSubReg(MO.getReg(), Hexagon::isub_hi); in HexagonProcessInstruction()
541 unsigned Low = RI->getSubReg(MO.getReg(), Hexagon::isub_lo); in HexagonProcessInstruction()
552 unsigned High = RI->getSubReg(MO.getReg(), Hexagon::isub_hi); in HexagonProcessInstruction()
553 unsigned Low = RI->getSubReg(MO.getReg(), Hexagon::isub_lo); in HexagonProcessInstruction()
566 unsigned High = RI->getSubReg(MO.getReg(), Hexagon::isub_hi); in HexagonProcessInstruction()
567 unsigned Low = RI->getSubReg(MO.getReg(), Hexagon::isub_lo); in HexagonProcessInstruction()
H A DHexagonSplitConst32AndConst64.cpp89 Register DestLo = TRI->getSubReg(DestReg, Hexagon::isub_lo); in runOnMachineFunction()
90 Register DestHi = TRI->getSubReg(DestReg, Hexagon::isub_hi); in runOnMachineFunction()
H A DHexagonInstrInfo.cpp1087 assert(BaseOp.getSubReg() == 0); in expandPostRAPseudo()
1102 assert(BaseOp.getSubReg() == 0); in expandPostRAPseudo()
1109 HRI.getSubReg(DstReg, Hexagon::vsub_lo)) in expandPostRAPseudo()
1123 assert(SrcOp.getSubReg() == 0); in expandPostRAPseudo()
1125 assert(BaseOp.getSubReg() == 0); in expandPostRAPseudo()
1141 assert(BaseOp.getSubReg() == 0); in expandPostRAPseudo()
1285 assert(Op1.getSubReg() == 0); in expandPostRAPseudo()
1318 assert(Op1.getSubReg() == 0); in expandPostRAPseudo()
1915 unsigned BaseSubA = BaseA.getSubReg(); in areMemAccessesTriviallyDisjoint()
1923 unsigned BaseSubB = BaseB.getSubReg(); in areMemAccessesTriviallyDisjoint()
[all …]
H A DRDFCopy.cpp46 RegisterRef DstR = DFG.makeRegRef(Dst.getReg(), Dst.getSubReg()); in interpretAsCopy()
47 RegisterRef SrcR = DFG.makeRegRef(Src.getReg(), Src.getSubReg()); in interpretAsCopy()
128 return S.getSubReg(); in run()
H A DHexagonExpandCondsets.cpp180 Sub(Op.getSubReg()) {} in RegisterRef()
325 LaneBitmask SLM = getLaneMask(Reg, Op.getSubReg()); in updateKillFlags()
377 Register DR = Op.getReg(), DSR = Op.getSubReg(); in updateDeadsInRange()
594 MCRegister PhysS = (RS.Sub == 0) ? PhysR : TRI->getSubReg(PhysR, RS.Sub); in getCondTfrOpcode()
649 .addReg(PredOp.getReg(), PredState, PredOp.getSubReg()) in genCondTfrFor()
650 .addReg(SrcOp.getReg(), SrcState, SrcOp.getSubReg()); in genCondTfrFor()
654 .addReg(PredOp.getReg(), PredState, PredOp.getSubReg()) in genCondTfrFor()
676 Register DR = MD.getReg(), DSR = MD.getSubReg(); in split()
886 MB.addReg(DefOp.getReg(), getRegState(DefOp), DefOp.getSubReg()); in predicateAt()
888 PredOp.getSubReg()); in predicateAt()
[all …]
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64AdvSIMDScalarPass.cpp144 if (isFPR64(MI->getOperand(0).getReg(), MI->getOperand(0).getSubReg(), in getSrcFromCopy()
146 isGPR64(MI->getOperand(1).getReg(), MI->getOperand(1).getSubReg(), MRI)) in getSrcFromCopy()
148 if (isGPR64(MI->getOperand(0).getReg(), MI->getOperand(0).getSubReg(), in getSrcFromCopy()
150 isFPR64(MI->getOperand(1).getReg(), MI->getOperand(1).getSubReg(), in getSrcFromCopy()
152 SubReg = MI->getOperand(1).getSubReg(); in getSrcFromCopy()
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/Sparc/
H A DSparcRegisterInfo.cpp186 Register SrcEvenReg = getSubReg(SrcReg, SP::sub_even64); in eliminateFrameIndex()
187 Register SrcOddReg = getSubReg(SrcReg, SP::sub_odd64); in eliminateFrameIndex()
198 Register DestEvenReg = getSubReg(DestReg, SP::sub_even64); in eliminateFrameIndex()
199 Register DestOddReg = getSubReg(DestReg, SP::sub_odd64); in eliminateFrameIndex()
/freebsd-13.1/contrib/llvm-project/llvm/lib/MC/
H A DMCRegisterInfo.cpp27 if (RC->contains(*Supers) && Reg == getSubReg(*Supers, SubIdx)) in getMatchingSuperReg()
32 MCRegister MCRegisterInfo::getSubReg(MCRegister Reg, unsigned Idx) const { in getSubReg() function in MCRegisterInfo
/freebsd-13.1/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMExpandPseudoInsts.cpp536 D0 = TRI->getSubReg(Reg, ARM::dsub_0); in GetDSubRegs()
537 D1 = TRI->getSubReg(Reg, ARM::dsub_1); in GetDSubRegs()
538 D2 = TRI->getSubReg(Reg, ARM::dsub_2); in GetDSubRegs()
539 D3 = TRI->getSubReg(Reg, ARM::dsub_3); in GetDSubRegs()
541 D0 = TRI->getSubReg(Reg, ARM::dsub_4); in GetDSubRegs()
542 D1 = TRI->getSubReg(Reg, ARM::dsub_5); in GetDSubRegs()
543 D2 = TRI->getSubReg(Reg, ARM::dsub_6); in GetDSubRegs()
544 D3 = TRI->getSubReg(Reg, ARM::dsub_7); in GetDSubRegs()
546 D0 = TRI->getSubReg(Reg, ARM::dsub_3); in GetDSubRegs()
547 D1 = TRI->getSubReg(Reg, ARM::dsub_4); in GetDSubRegs()
[all …]

123456