LLVM 24.0.0git
IRUnitRef.h File Reference

This file defines IRUnitRef, a type-erased reference to the IR unit a pass or analysis is running on, and IRUnitKindTraits, which IR units specialize to opt into being referred to by one. More...

#include "llvm/Support/Casting.h"
#include <cstddef>
#include <type_traits>

Go to the source code of this file.

Classes

struct  llvm::IRUnitKindTraits< IRUnitT >
 Map an IR unit type to its IRUnitKind. More...
struct  llvm::IRUnitKindTraits< Module >
struct  llvm::IRUnitKindTraits< Function >
struct  llvm::IRUnitKindTraits< Loop >
struct  llvm::IRUnitKindTraits< MachineFunction >
class  llvm::IRUnitRef
 A type-erased reference to the IR unit a pass or analysis is running on, together with the kind of IR unit it refers to. More...
struct  llvm::CastInfo< To, IRUnitRef >
 Lets isa/cast/dyn_cast query which IR unit an IRUnitRef holds, naming the IR unit itself rather than a pointer to it: dyn_cast<Module>(IR). More...
struct  llvm::CastInfo< To, const IRUnitRef >

Namespaces

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

Enumerations

enum class  llvm::IRUnitKind {
  llvm::Module , llvm::Function , llvm::Loop , llvm::MachineFunction ,
  llvm::LazyCallGraphSCC
}
 The IR units a pass can run on. More...

Detailed Description

This file defines IRUnitRef, a type-erased reference to the IR unit a pass or analysis is running on, and IRUnitKindTraits, which IR units specialize to opt into being referred to by one.

Definition in file IRUnitRef.h.