Go to the documentation of this file.
14 #ifndef LLVM_MCA_INSTRBUILDER_H
15 #define LLVM_MCA_INSTRBUILDER_H
43 OS <<
"Instruction is recycled\n";
71 std::unique_ptr<const InstrDesc>>
76 std::unique_ptr<const InstrDesc>>
87 createInstrDescImpl(
const MCInst &MCI,
90 getOrCreateInstrDesc(
const MCInst &MCI,
107 VariantDescriptors.
clear();
108 FirstCallInst =
true;
109 FirstReturnInst =
true;
123 #endif // LLVM_MCA_INSTRBUILDER_H
This is an optimization pass for GlobalISel generic memory operations.
This class allows targets to optionally customize the logic that resolves scheduling class IDs.
RecycledInstErr(Instruction *Inst)
std::error_code convertToErrorCode() const override
Convert this error to a std::error_code.
Tagged union holding either a T or a Error.
Instances of this class represent a single low-level machine instruction.
An instruction propagated through the simulated instruction pipeline.
void log(raw_ostream &OS) const override
Print an error message to an output stream.
This class implements an extremely fast bulk output stream that can only output to a stream.
unsigned ID
LLVM IR allows to use arbitrary numbers as calling convention identifiers.
An instruction descriptor.
A builder class that knows how to construct Instruction objects.
Base class for user error types.
Expected< std::unique_ptr< Instruction > > createInstruction(const MCInst &MCI, const SmallVector< SharedInstrument > &IVec)
MCRegisterInfo base class - We assume that the target defines a static array of MCRegisterDesc object...
void setInstRecycleCallback(InstRecycleCallback CB)
Set a callback which is invoked to retrieve a recycled mca::Instruction or null if there isn't any.
Interface to description of machine instruction set.
std::error_code inconvertibleErrorCode()
The value returned by this function can be returned from convertToErrorCode for Error values where no...
Lightweight error class with error context and mandatory checking.
Instruction * getInst() const
Generic base class for all target subtargets.