LLVM 20.0.0git
Classes | Namespaces | Macros
SandboxIR.h File Reference
#include "llvm/IR/Function.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/User.h"
#include "llvm/IR/Value.h"
#include "llvm/SandboxIR/Tracker.h"
#include "llvm/SandboxIR/Use.h"
#include "llvm/Support/raw_ostream.h"
#include <iterator>
#include "llvm/SandboxIR/SandboxIRValues.def"

Go to the source code of this file.

Classes

class  llvm::sandboxir::OperandUseIterator
 Iterator for the Use edges of a User's operands. More...
 
class  llvm::sandboxir::UserUseIterator
 Iterator for the Use edges of a Value's users. More...
 
class  llvm::sandboxir::Value
 A SandboxIR Value has users. This is the base class. More...
 
struct  llvm::sandboxir::Value::UseToUser
 Helper for mapped_iterator. More...
 
class  llvm::sandboxir::Argument
 Argument of a sandboxir::Function. More...
 
class  llvm::sandboxir::User
 A sandboxir::User has operands. More...
 
class  llvm::sandboxir::Constant
 
class  llvm::sandboxir::ConstantInt
 
class  llvm::sandboxir::BBIterator
 Iterator for Instructions in a `BasicBlock. More...
 
class  llvm::sandboxir::BasicBlock
 Contains a list of sandboxir::Instruction's. More...
 
class  llvm::sandboxir::Instruction
 A sandboxir::User with operands, opcode and linked with previous/next instructions in an instruction list. More...
 
class  llvm::sandboxir::SingleLLVMInstructionImpl< LLVMT >
 Instructions that contain a single LLVM Instruction can inherit from this. More...
 
class  llvm::sandboxir::SelectInst
 
class  llvm::sandboxir::InsertElementInst
 
class  llvm::sandboxir::ExtractElementInst
 
class  llvm::sandboxir::BranchInst
 
class  llvm::sandboxir::UnaryInstruction
 An abstract class, parent of unary instructions. More...
 
class  llvm::sandboxir::LoadInst
 
class  llvm::sandboxir::StoreInst
 
class  llvm::sandboxir::UnreachableInst
 
class  llvm::sandboxir::ReturnInst
 
class  llvm::sandboxir::CallBase
 
class  llvm::sandboxir::CallInst
 
class  llvm::sandboxir::InvokeInst
 
class  llvm::sandboxir::CallBrInst
 
class  llvm::sandboxir::GetElementPtrInst
 
class  llvm::sandboxir::CatchSwitchInst
 
class  llvm::sandboxir::SwitchInst
 
class  llvm::sandboxir::UnaryOperator
 
class  llvm::sandboxir::BinaryOperator
 
class  llvm::sandboxir::AtomicRMWInst
 
class  llvm::sandboxir::AtomicCmpXchgInst
 
class  llvm::sandboxir::AllocaInst
 
class  llvm::sandboxir::CastInst
 
class  llvm::sandboxir::CastInstImpl< Op >
 
class  llvm::sandboxir::TruncInst
 
class  llvm::sandboxir::ZExtInst
 
class  llvm::sandboxir::SExtInst
 
class  llvm::sandboxir::FPTruncInst
 
class  llvm::sandboxir::FPExtInst
 
class  llvm::sandboxir::UIToFPInst
 
class  llvm::sandboxir::SIToFPInst
 
class  llvm::sandboxir::FPToUIInst
 
class  llvm::sandboxir::FPToSIInst
 
class  llvm::sandboxir::IntToPtrInst
 
class  llvm::sandboxir::PtrToIntInst
 
class  llvm::sandboxir::BitCastInst
 
class  llvm::sandboxir::AddrSpaceCastInst
 
class  llvm::sandboxir::PHINode
 
class  llvm::sandboxir::OpaqueInst
 An LLLVM Instruction that has no SandboxIR equivalent class gets mapped to an OpaqueInstr. More...
 
class  llvm::sandboxir::Context
 
class  llvm::sandboxir::Function
 

Namespaces

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

Macros

#define DEF_INSTR(ID, OPC, CLASS)   friend class CLASS;
 
#define DEF_VALUE(ID, CLASS)   ID,
 
#define DEF_USER(ID, CLASS)   ID,
 
#define DEF_INSTR(ID, OPC, CLASS)   ID,
 
#define DEF_VALUE(ID, CLASS)
 
#define DEF_USER(ID, CLASS)
 
#define DEF_INSTR(ID, OPC, CLASS)
 
#define OP(OPC)   OPC,
 
#define OPCODES(...)   __VA_ARGS__
 
#define DEF_INSTR(ID, OPC, CLASS)   OPC
 
#define DEF_INSTR(ID, OPC, CLASS)   friend class CLASS;
 

Macro Definition Documentation

◆ DEF_INSTR [1/5]

#define DEF_INSTR (   ID,
  OPC,
  CLASS 
)    friend class CLASS;

Definition at line 841 of file SandboxIR.h.

◆ DEF_INSTR [2/5]

#define DEF_INSTR (   ID,
  OPC,
  CLASS 
)    ID,

Definition at line 841 of file SandboxIR.h.

◆ DEF_INSTR [3/5]

#define DEF_INSTR (   ID,
  OPC,
  CLASS 
)
Value:
case ClassID::ID: \
return #ID;

Definition at line 841 of file SandboxIR.h.

◆ DEF_INSTR [4/5]

#define DEF_INSTR (   ID,
  OPC,
  CLASS 
)    OPC

Definition at line 841 of file SandboxIR.h.

◆ DEF_INSTR [5/5]

#define DEF_INSTR (   ID,
  OPC,
  CLASS 
)    friend class CLASS;

Definition at line 841 of file SandboxIR.h.

◆ DEF_USER [1/2]

#define DEF_USER (   ID,
  CLASS 
)    ID,

Definition at line 209 of file SandboxIR.h.

◆ DEF_USER [2/2]

#define DEF_USER (   ID,
  CLASS 
)
Value:
case ClassID::ID: \
return #ID;

Definition at line 209 of file SandboxIR.h.

◆ DEF_VALUE [1/2]

#define DEF_VALUE (   ID,
  CLASS 
)    ID,

Definition at line 208 of file SandboxIR.h.

◆ DEF_VALUE [2/2]

#define DEF_VALUE (   ID,
  CLASS 
)
Value:
case ClassID::ID: \
return #ID;

Definition at line 208 of file SandboxIR.h.

◆ OP

#define OP (   OPC)    OPC,

Definition at line 653 of file SandboxIR.h.

◆ OPCODES

#define OPCODES (   ...)    __VA_ARGS__

Definition at line 654 of file SandboxIR.h.