14#ifndef LLVM_LIB_TARGET_SPARC_SPARC_H
15#define LLVM_LIB_TARGET_SPARC_SPARC_H
27class SparcTargetMachine;
174 inline static unsigned HI22(int64_t imm) {
175 return (
unsigned)((imm >> 10) & ((1 << 22)-1));
178 inline static unsigned LO10(int64_t imm) {
179 return (
unsigned)(imm & 0x3FF);
182 inline static unsigned HIX22(int64_t imm) {
186 inline static unsigned LOX10(int64_t imm) {
PassRegistry - This class manages the registration and intitialization of the pass subsystem as appli...
#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.
static const char * SPARCCondCodeToString(SPCC::CondCodes CC)
static unsigned HI22(int64_t imm)
static unsigned HIX22(int64_t imm)
void initializeSparcDAGToDAGISelLegacyPass(PassRegistry &)
void initializeErrataWorkaroundPass(PassRegistry &)
static unsigned LOX10(int64_t imm)
void LowerSparcMachineInstrToMCInst(const MachineInstr *MI, MCInst &OutMI, AsmPrinter &AP)
FunctionPass * createSparcISelDag(SparcTargetMachine &TM)
createSparcISelDag - This pass converts a legalized DAG into a SPARC-specific DAG,...
static unsigned LO10(int64_t imm)
FunctionPass * createSparcDelaySlotFillerPass()
createSparcDelaySlotFillerPass - Returns a pass that fills in delay slots in Sparc MachineFunctions