LLVM 22.0.0git
AArch64GlobalISelUtils.h File Reference

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::AArch64GISelUtils

Functions

constexpr bool llvm::AArch64GISelUtils::isLegalArithImmed (const uint64_t C)
std::optional< RegOrConstantllvm::AArch64GISelUtils::getAArch64VectorSplat (const MachineInstr &MI, const MachineRegisterInfo &MRI)
std::optional< int64_t > llvm::AArch64GISelUtils::getAArch64VectorSplatScalar (const MachineInstr &MI, const MachineRegisterInfo &MRI)
bool llvm::AArch64GISelUtils::isCMN (const MachineInstr *MaybeSub, const CmpInst::Predicate &Pred, const MachineRegisterInfo &MRI)
bool llvm::AArch64GISelUtils::tryEmitBZero (MachineInstr &MI, MachineIRBuilder &MIRBuilder, bool MinSize)
 Replace a G_MEMSET with a value of 0 with a G_BZERO instruction if it is supported and beneficial to do so.
std::tuple< uint16_t, Registerllvm::AArch64GISelUtils::extractPtrauthBlendDiscriminators (Register Disc, MachineRegisterInfo &MRI)
 Analyze a ptrauth discriminator value to try to find the constant integer and address parts, cracking a ptrauth_blend intrinsic if there is one.
void llvm::AArch64GISelUtils::changeFCMPPredToAArch64CC (const CmpInst::Predicate P, AArch64CC::CondCode &CondCode, AArch64CC::CondCode &CondCode2)
 Find the AArch64 condition codes necessary to represent P for a scalar floating point comparison.
void llvm::AArch64GISelUtils::changeVectorFCMPPredToAArch64CC (const CmpInst::Predicate P, AArch64CC::CondCode &CondCode, AArch64CC::CondCode &CondCode2, bool &Invert)
 Find the AArch64 condition codes necessary to represent P for a vector floating point comparison.