LLVM: lib/Target/SPIRV/SPIRVMCInstLower.cpp Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
19
20using namespace llvm;
21
25
31 for (unsigned i = 0, e = MI->getNumOperands(); i != e; ++i) {
35 default:
40 std::string DiagMsg;
42 MI->print(OS);
43 DiagMsg = "Unknown function in:" + DiagMsg;
45 }
47 break;
48 }
51 break;
56 break;
57 }
59 if (MI->getOpcode() == SPIRV::OpExtInst && i == 2) {
62 } else {
64 }
65 break;
69 break;
70 }
71
73 }
74}
This file contains the declarations for the subclasses of Constant, which represent the different fla...
LLVM_ABI float convertToFloat() const
Converts this APFloat to host float value.
const APFloat & getValueAPF() const
Instances of this class represent a single low-level machine instruction.
void setFlags(unsigned F)
void addOperand(const MCOperand Op)
void setOpcode(unsigned Op)
Instances of this class represent operands of the MCInst class.
static MCOperand createReg(MCRegister Reg)
static MCOperand createImm(int64_t Val)
static MCOperand createDFPImm(uint64_t Val)
Wrapper class representing physical registers. Should be passed by value.
constexpr bool isValid() const
Representation of each machine instruction.
MachineOperand class - Representation of each machine instruction operand.
const GlobalValue * getGlobal() const
MachineBasicBlock * getMBB() const
MachineOperandType getType() const
getType - Returns the MachineOperandType for this operand.
Register getReg() const
getReg - Returns the register number.
const ConstantFP * getFPImm() const
@ MO_Immediate
Immediate operand.
@ MO_GlobalAddress
Address of a global value.
@ MO_MachineBasicBlock
MachineBasicBlock reference.
@ MO_Register
Register operand.
@ MO_FPImmediate
Floating-point immediate operand.
MCRegister asMCReg() const
Utility to check-convert this value to a MCRegister.
void lower(const MachineInstr *MI, MCInst &OutMI, SPIRV::ModuleAnalysisInfo *MAI) const
Definition SPIRVMCInstLower.cpp:22
A raw_ostream that writes to an std::string.
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
This is an optimization pass for GlobalISel generic memory operations.
decltype(auto) dyn_cast(const From &Val)
dyn_cast - Return the argument parameter cast to the specified type.
LLVM_ABI void report_fatal_error(Error Err, bool gen_crash_diag=true)
MCRegister getExtInstSetReg(unsigned SetNum)
MCRegister getRegisterAlias(const MachineFunction *MF, Register Reg)
MCRegister getOrCreateMBBRegister(const MachineBasicBlock &MBB)
MCRegister getFuncReg(const Function *F)