LLVM  16.0.0git
Classes | Namespaces | Functions | Variables
Instruction.h File Reference
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/MC/MCRegister.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include <memory>
Include dependency graph for Instruction.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


class  llvm::mca::MCAOperand
 A representation of an mca::Instruction operand for use in mca::CustomBehaviour. More...
struct  llvm::mca::WriteDescriptor
 A register write descriptor. More...
struct  llvm::mca::ReadDescriptor
 A register read descriptor. More...
struct  llvm::mca::CriticalDependency
 A critical data dependency descriptor. More...
class  llvm::mca::WriteState
 Tracks uses of a register definition (e.g. More...
class  llvm::mca::ReadState
 Tracks register operand latency in cycles. More...
class  llvm::mca::CycleSegment
 A sequence of cycles. More...
struct  llvm::mca::ResourceUsage
 Helper used by class InstrDesc to describe how hardware resources are used. More...
struct  llvm::mca::InstrDesc
 An instruction descriptor. More...
class  llvm::mca::InstructionBase
 Base class for instructions consumed by the simulation pipeline. More...
class  llvm::mca::Instruction
 An instruction propagated through the simulated instruction pipeline. More...
class  llvm::mca::InstRef
 An InstRef contains both a SourceMgr index and Instruction pair. More...


 This is an optimization pass for GlobalISel generic memory operations.


raw_ostream & llvm::mca::operator<< (raw_ostream &OS, const InstRef &IR)


constexpr int llvm::mca::UNKNOWN_CYCLES = -512

Detailed Description

This file defines abstractions used by the Pipeline to model register reads, register writes and instructions.

Definition in file Instruction.h.