LLVM 20.0.0git
Classes | Namespaces
GenericMachineInstrs.h File Reference

Declares convenience wrapper classes for interpreting MachineInstr instances as specific generic operations. More...

#include "llvm/ADT/APInt.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineMemOperand.h"
#include "llvm/CodeGen/TargetOpcodes.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Instructions.h"
#include "llvm/Support/Casting.h"

Go to the source code of this file.

Classes

class  llvm::GenericMachineInstr
 A base class for all GenericMachineInstrs. More...
 
class  llvm::GMemOperation
 Provides common memory operand functionality. More...
 
class  llvm::GLoadStore
 Represents any type of generic load or store. More...
 
class  llvm::GIndexedLoad
 Represents indexed loads. More...
 
class  llvm::GIndexedExtLoad
 Represents a G_INDEX_ZEXTLOAD/G_INDEXED_SEXTLOAD. More...
 
class  llvm::GIndexedAnyExtLoad
 Represents either G_INDEXED_LOAD, G_INDEXED_ZEXTLOAD or G_INDEXED_SEXTLOAD. More...
 
class  llvm::GIndexedZExtLoad
 Represents a G_ZEXTLOAD. More...
 
class  llvm::GIndexedSExtLoad
 Represents a G_SEXTLOAD. More...
 
class  llvm::GIndexedStore
 Represents indexed stores. More...
 
class  llvm::GAnyLoad
 Represents any generic load, including sign/zero extending variants. More...
 
class  llvm::GLoad
 Represents a G_LOAD. More...
 
class  llvm::GExtLoad
 Represents either a G_SEXTLOAD or G_ZEXTLOAD. More...
 
class  llvm::GSExtLoad
 Represents a G_SEXTLOAD. More...
 
class  llvm::GZExtLoad
 Represents a G_ZEXTLOAD. More...
 
class  llvm::GStore
 Represents a G_STORE. More...
 
class  llvm::GUnmerge
 Represents a G_UNMERGE_VALUES. More...
 
class  llvm::GMergeLikeInstr
 Represents G_BUILD_VECTOR, G_CONCAT_VECTORS or G_MERGE_VALUES. More...
 
class  llvm::GMerge
 Represents a G_MERGE_VALUES. More...
 
class  llvm::GConcatVectors
 Represents a G_CONCAT_VECTORS. More...
 
class  llvm::GBuildVector
 Represents a G_BUILD_VECTOR. More...
 
class  llvm::GBuildVectorTrunc
 Represents a G_BUILD_VECTOR_TRUNC. More...
 
class  llvm::GShuffleVector
 Represents a G_SHUFFLE_VECTOR. More...
 
class  llvm::GPtrAdd
 Represents a G_PTR_ADD. More...
 
class  llvm::GImplicitDef
 Represents a G_IMPLICIT_DEF. More...
 
class  llvm::GSelect
 Represents a G_SELECT. More...
 
class  llvm::GAnyCmp
 Represent a G_ICMP or G_FCMP. More...
 
class  llvm::GICmp
 Represent a G_ICMP. More...
 
class  llvm::GFCmp
 Represent a G_FCMP. More...
 
class  llvm::GBinOpCarryOut
 Represents overflowing binary operations. More...
 
class  llvm::GAddSubCarryOut
 Represents overflowing add/sub operations. More...
 
class  llvm::GAddCarryOut
 Represents overflowing add operations. More...
 
class  llvm::GSubCarryOut
 Represents overflowing sub operations. More...
 
class  llvm::GAddSubCarryInOut
 Represents overflowing add/sub operations that also consume a carry-in. More...
 
class  llvm::GIntrinsic
 Represents a call to an intrinsic. More...
 
class  llvm::GVecReduce
 
class  llvm::GPhi
 Represents a G_PHI. More...
 
class  llvm::GBinOp
 Represents a binary operation, i.e, x = y op z. More...
 
class  llvm::GIntBinOp
 Represents an integer binary operation. More...
 
class  llvm::GFBinOp
 Represents a floating point binary operation. More...
 
class  llvm::GLogicalBinOp
 Represents a logical binary operation. More...
 
class  llvm::GAdd
 Represents an integer addition. More...
 
class  llvm::GAnd
 Represents a logical and. More...
 
class  llvm::GOr
 Represents a logical or. More...
 
class  llvm::GExtractVectorElement
 Represents an extract vector element. More...
 
class  llvm::GInsertVectorElement
 Represents an insert vector element. More...
 
class  llvm::GExtractSubvector
 Represents an extract subvector. More...
 
class  llvm::GInsertSubvector
 Represents a insert subvector. More...
 
class  llvm::GFreeze
 Represents a freeze. More...
 
class  llvm::GCastOp
 Represents a cast operation. More...
 
class  llvm::GSext
 Represents a sext. More...
 
class  llvm::GZext
 Represents a zext. More...
 
class  llvm::GAnyExt
 Represents an any ext. More...
 
class  llvm::GTrunc
 Represents a trunc. More...
 
class  llvm::GVScale
 Represents a vscale. More...
 
class  llvm::GStepVector
 Represents a step vector. More...
 
class  llvm::GSub
 Represents an integer subtraction. More...
 
class  llvm::GMul
 Represents an integer multiplication. More...
 
class  llvm::GShl
 Represents a shift left. More...
 
class  llvm::GSUCmp
 Represents a threeway compare. More...
 
class  llvm::GExtOp
 Represents an integer-like extending operation. More...
 
class  llvm::GExtOrTruncOp
 Represents an integer-like extending or truncating operation. More...
 
class  llvm::GSplatVector
 Represents a splat vector. More...
 

Namespaces

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

Detailed Description

Declares convenience wrapper classes for interpreting MachineInstr instances as specific generic operations.

Definition in file GenericMachineInstrs.h.