LLVM
15.0.0git
|
#include "llvm/CodeGen/GlobalISel/Utils.h"
#include "llvm/ADT/APFloat.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/Optional.h"
#include "llvm/CodeGen/GlobalISel/GISelChangeObserver.h"
#include "llvm/CodeGen/GlobalISel/GISelKnownBits.h"
#include "llvm/CodeGen/GlobalISel/GenericMachineInstrs.h"
#include "llvm/CodeGen/GlobalISel/LostDebugLocObserver.h"
#include "llvm/CodeGen/GlobalISel/MIPatternMatch.h"
#include "llvm/CodeGen/GlobalISel/MachineIRBuilder.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineOptimizationRemarkEmitter.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/MachineSizeOpts.h"
#include "llvm/CodeGen/RegisterBankInfo.h"
#include "llvm/CodeGen/StackProtector.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/CodeGen/TargetLowering.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/IR/Constants.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Transforms/Utils/SizeOpts.h"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "globalisel-utils" |
Functions | |
static void | reportGISelDiagnostic (DiagnosticSeverity Severity, MachineFunction &MF, const TargetPassConfig &TPC, MachineOptimizationRemarkEmitter &MORE, MachineOptimizationRemarkMissed &R) |
static unsigned | getLCMSize (unsigned OrigSize, unsigned TargetSize) |
static bool | isBuildVectorOp (unsigned Opcode) |
Optional< APInt > | getIConstantSplatVal (const MachineInstr &MI, const MachineRegisterInfo &MRI) |
static bool | isConstantScalar (const MachineInstr &MI, const MachineRegisterInfo &MRI, bool AllowFP=true, bool AllowOpaqueConstants=true) |
Optional<APInt> getIConstantSplatVal | ( | const MachineInstr & | MI, |
const MachineRegisterInfo & | MRI | ||
) |
MI
if possible. Definition at line 1086 of file Utils.cpp.
References llvm::getIConstantSplatVal(), MI, and MRI.
|
static |
Definition at line 883 of file Utils.cpp.
References llvm::greatestCommonDivisor(), and Mul.
Referenced by llvm::getLCMType().
|
static |
Definition at line 1015 of file Utils.cpp.
Referenced by llvm::getVectorSplat(), and llvm::isConstantOrConstantVector().
|
static |
Definition at line 1140 of file Utils.cpp.
References MI.
Referenced by llvm::isConstantOrConstantVector().
|
static |
Definition at line 243 of file Utils.cpp.
References llvm::DS_Error, llvm::MachineFunction::getName(), llvm::TargetPassConfig::isGlobalISelAbortEnabled(), MORE, and llvm::report_fatal_error().
Referenced by llvm::reportGISelFailure(), and llvm::reportGISelWarning().