LLVM: lib/Target/AMDGPU/SIFoldOperands.cpp File Reference (original) (raw)
Go to the source code of this file.
| Functions |
|
| static const TargetRegisterClass * |
getRegOpRC (const MachineRegisterInfo &MRI, const TargetRegisterInfo &TRI, const MachineOperand &MO) |
| static unsigned |
macToMad (unsigned Opc) |
| static void |
appendFoldCandidate (SmallVectorImpl< FoldCandidate > &FoldList, FoldCandidate &&Entry) |
| static void |
appendFoldCandidate (SmallVectorImpl< FoldCandidate > &FoldList, MachineInstr *MI, unsigned OpNo, const FoldableDef &FoldOp, bool Commuted=false, int ShrinkOp=-1) |
| static bool |
isPKF32InstrReplicatesLower32BitsOfScalarOperand (const GCNSubtarget *ST, MachineInstr *MI, unsigned OpNo) |
| static bool |
checkImmOpForPKF32InstrReplicatesLower32BitsOfScalarOperand (const FoldableDef &OpToFold) |
| static MachineOperand * |
lookUpCopyChain (const SIInstrInfo &TII, const MachineRegisterInfo &MRI, Register SrcReg) |
| static bool |
evalBinaryInstruction (unsigned Opcode, int32_t &Result, uint32_t LHS, uint32_t RHS) |
| static unsigned |
getMovOpc (bool IsScalar) |
| static int |
getOModValue (unsigned Opc, int64_t Val) |
| static bool |
isAGPRCopy (const SIRegisterInfo &TRI, const MachineRegisterInfo &MRI, const MachineInstr &Copy, Register &OutReg, unsigned &OutSubReg) |
|
Checks whether Copy is a AGPR -> VGPR copy. |
◆ DEBUG_TYPE
#define DEBUG_TYPE "si-fold-operands"
◆ appendFoldCandidate() [1/2]
| void appendFoldCandidate ( SmallVectorImpl< FoldCandidate > & FoldList, FoldCandidate && Entry ) |
static |
◆ appendFoldCandidate() [2/2]
◆ checkImmOpForPKF32InstrReplicatesLower32BitsOfScalarOperand()
| bool checkImmOpForPKF32InstrReplicatesLower32BitsOfScalarOperand ( const FoldableDef & OpToFold) |
static |
◆ evalBinaryInstruction()
◆ getMovOpc()
◆ getOModValue()
| int getOModValue ( unsigned Opc, int64_t Val ) |
static |
◆ getRegOpRC()
◆ isAGPRCopy()
◆ isPKF32InstrReplicatesLower32BitsOfScalarOperand()
◆ lookUpCopyChain()
◆ macToMad()