LLVM 20.0.0git
|
This file implements the targeting of the Machinelegalizer class for Mips. More...
#include "MipsLegalizerInfo.h"
#include "MipsTargetMachine.h"
#include "llvm/CodeGen/GlobalISel/GenericMachineInstrs.h"
#include "llvm/CodeGen/GlobalISel/LegalizerHelper.h"
#include "llvm/CodeGen/GlobalISel/MachineIRBuilder.h"
#include "llvm/IR/IntrinsicsMips.h"
Go to the source code of this file.
Classes | |
struct | TypesAndMemOps |
Functions | |
static bool | isUnalignedMemmoryAccess (uint64_t MemSize, uint64_t AlignInBits) |
static bool | CheckTy0Ty1MemSizeAlign (const LegalityQuery &Query, std::initializer_list< TypesAndMemOps > SupportedValues) |
static bool | CheckTyN (unsigned N, const LegalityQuery &Query, std::initializer_list< LLT > SupportedValues) |
static bool | SelectMSA3OpIntrinsic (MachineInstr &MI, unsigned Opcode, MachineIRBuilder &MIRBuilder, const MipsSubtarget &ST) |
static bool | MSA3OpIntrinsicToGeneric (MachineInstr &MI, unsigned Opcode, MachineIRBuilder &MIRBuilder, const MipsSubtarget &ST) |
static bool | MSA2OpIntrinsicToGeneric (MachineInstr &MI, unsigned Opcode, MachineIRBuilder &MIRBuilder, const MipsSubtarget &ST) |
This file implements the targeting of the Machinelegalizer class for Mips.
Definition in file MipsLegalizerInfo.cpp.
|
static |
Definition at line 40 of file MipsLegalizerInfo.cpp.
References llvm::isPowerOf2_64(), isUnalignedMemmoryAccess(), llvm::LegalityQuery::MMODescrs, and llvm::LegalityQuery::Types.
Referenced by llvm::MipsLegalizerInfo::MipsLegalizerInfo().
|
static |
Definition at line 63 of file MipsLegalizerInfo.cpp.
References llvm::is_contained(), N, and llvm::LegalityQuery::Types.
Referenced by llvm::MipsLegalizerInfo::MipsLegalizerInfo().
Definition at line 31 of file MipsLegalizerInfo.cpp.
References assert(), and llvm::isPowerOf2_64().
Referenced by CheckTy0Ty1MemSizeAlign(), and llvm::MipsLegalizerInfo::MipsLegalizerInfo().
|
static |
Definition at line 496 of file MipsLegalizerInfo.cpp.
References llvm::MachineInstrBuilder::add(), assert(), llvm::MachineIRBuilder::buildInstr(), and MI.
Referenced by llvm::MipsLegalizerInfo::legalizeIntrinsic().
|
static |
Definition at line 484 of file MipsLegalizerInfo.cpp.
References llvm::MachineInstrBuilder::add(), assert(), llvm::MachineIRBuilder::buildInstr(), and MI.
Referenced by llvm::MipsLegalizerInfo::legalizeIntrinsic().
|
static |
Definition at line 469 of file MipsLegalizerInfo.cpp.
References llvm::MachineInstrBuilder::add(), assert(), llvm::MachineIRBuilder::buildInstr(), llvm::MachineInstrBuilder::constrainAllUses(), llvm::MachineIRBuilder::getTII(), and MI.
Referenced by llvm::MipsLegalizerInfo::legalizeIntrinsic().