LLVM 20.0.0git
|
This file implements the targeting of the InstructionSelector class for PowerPC. More...
#include "PPC.h"
#include "PPCInstrInfo.h"
#include "PPCMachineFunctionInfo.h"
#include "PPCRegisterBankInfo.h"
#include "PPCSubtarget.h"
#include "PPCTargetMachine.h"
#include "llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h"
#include "llvm/CodeGen/GlobalISel/GenericMachineInstrs.h"
#include "llvm/CodeGen/GlobalISel/InstructionSelector.h"
#include "llvm/CodeGen/GlobalISel/MachineIRBuilder.h"
#include "llvm/CodeGen/MachineConstantPool.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/IR/IntrinsicsPowerPC.h"
#include "llvm/Support/Debug.h"
#include "PPCGenGlobalISel.inc"
Go to the source code of this file.
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
Macros | |
#define | DEBUG_TYPE "ppc-gisel" |
#define | GET_GLOBALISEL_PREDICATE_BITSET |
#define | GET_GLOBALISEL_PREDICATES_DECL |
#define | GET_GLOBALISEL_TEMPORARIES_DECL |
#define | GET_GLOBALISEL_IMPL |
#define | GET_GLOBALISEL_PREDICATES_INIT |
#define | GET_GLOBALISEL_TEMPORARIES_INIT |
Functions | |
static bool | selectCopy (MachineInstr &I, const TargetInstrInfo &TII, MachineRegisterInfo &MRI, const TargetRegisterInfo &TRI, const RegisterBankInfo &RBI) |
static unsigned | selectLoadStoreOp (unsigned GenericOpc, unsigned RegBankID, unsigned OpSize) |
static uint32_t | findContiguousZerosAtLeast (uint64_t Imm, unsigned Num) |
InstructionSelector * | llvm::createPPCInstructionSelector (const PPCTargetMachine &TM, const PPCSubtarget &Subtarget, const PPCRegisterBankInfo &RBI) |
This file implements the targeting of the InstructionSelector class for PowerPC.
Definition in file PPCInstructionSelector.cpp.
#define DEBUG_TYPE "ppc-gisel" |
Definition at line 28 of file PPCInstructionSelector.cpp.
#define GET_GLOBALISEL_IMPL |
Definition at line 85 of file PPCInstructionSelector.cpp.
#define GET_GLOBALISEL_PREDICATE_BITSET |
Definition at line 34 of file PPCInstructionSelector.cpp.
#define GET_GLOBALISEL_PREDICATES_DECL |
Definition at line 74 of file PPCInstructionSelector.cpp.
#define GET_GLOBALISEL_PREDICATES_INIT |
#define GET_GLOBALISEL_TEMPORARIES_DECL |
Definition at line 78 of file PPCInstructionSelector.cpp.
#define GET_GLOBALISEL_TEMPORARIES_INIT |
Definition at line 277 of file PPCInstructionSelector.cpp.
References llvm::Hi_32(), and llvm::Lo_32().
|
static |
Definition at line 130 of file PPCInstructionSelector.cpp.
References llvm::RegisterBankInfo::constrainGenericRegister(), llvm::dbgs(), llvm::RegisterBankInfo::getRegBank(), getRegClass(), I, llvm::Register::isPhysical(), LLVM_DEBUG, MRI, TII, and TRI.
|
static |
Definition at line 154 of file PPCInstructionSelector.cpp.
References llvm_unreachable.