LLVM 22.0.0git
Types.h File Reference

This file defines the type system for the LLVMABI library, which mirrors ABI-relevant aspects of frontend types. More...

Go to the source code of this file.

Classes

class  llvm::abi::Type
 Represents the ABI-specific view of a type in LLVM. More...
class  llvm::abi::VoidType
class  llvm::abi::ComplexType
class  llvm::abi::IntegerType
class  llvm::abi::FloatType
class  llvm::abi::PointerLikeType
class  llvm::abi::PointerType
class  llvm::abi::MemberPointerType
class  llvm::abi::ArrayType
class  llvm::abi::VectorType
struct  llvm::abi::FieldInfo
class  llvm::abi::RecordType
class  llvm::abi::TypeBuilder
 TypeBuilder manages the lifecycle of ABI types using bump pointer allocation. More...

Namespaces

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

Enumerations

enum class  llvm::abi::TypeKind {
  llvm::abi::Void , llvm::abi::MemberPointer , llvm::abi::Complex , llvm::abi::Integer ,
  llvm::abi::Float , llvm::abi::Pointer , llvm::abi::Array , llvm::abi::Vector ,
  llvm::abi::Record
}
enum class  llvm::abi::StructPacking { llvm::abi::Default , llvm::abi::Packed , llvm::abi::ExplicitPacking }
enum  llvm::abi::RecordFlags : unsigned {
  llvm::abi::None = 0 , llvm::abi::CanPassInRegisters = 1 << 0 , llvm::abi::IsUnion = 1 << 1 , llvm::abi::IsTransparent = 1 << 2 ,
  llvm::abi::IsCXXRecord = 1 << 3 , llvm::abi::IsPolymorphic = 1 << 4 , llvm::abi::HasFlexibleArrayMember = 1 << 5 , llvm::abi::LLVM_MARK_AS_BITMASK_ENUM =( HasFlexibleArrayMember)
}

Detailed Description

This file defines the type system for the LLVMABI library, which mirrors ABI-relevant aspects of frontend types.

Definition in file Types.h.