class DISubroutineType

Declaration

class DISubroutineType : public DIType { /* full declaration omitted */ };

Description

Type array for a subprogram. TODO: Fold the array of types in directly as operands.

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1265

Inherits from: DIType

Member Variables

private uint8_t CC
The calling convention used with DW_AT_calling_convention. Actually of type dwarf::CallingConvention.

Inherited from Metadata:

protected Storage
protected SubclassData1
protected SubclassData16 = 0
protected SubclassData32 = 0

Method Overview

  • private DISubroutineType(llvm::LLVMContext & C, llvm::Metadata::StorageType Storage, llvm::DINode::DIFlags Flags, uint8_t CC, ArrayRef<llvm::Metadata *> Ops)
  • public static bool classof(const llvm::Metadata * MD)
  • public llvm::TempDISubroutineType clone() const
  • private llvm::TempDISubroutineType cloneImpl() const
  • public llvm::TempDISubroutineType cloneWithCC(uint8_t CC) const
  • public uint8_t getCC() const
  • private static llvm::DISubroutineType * getImpl(llvm::LLVMContext & Context, llvm::DINode::DIFlags Flags, uint8_t CC, llvm::DITypeRefArray TypeArray, llvm::Metadata::StorageType Storage, bool ShouldCreate = true)
  • private static llvm::DISubroutineType * getImpl(llvm::LLVMContext & Context, llvm::DINode::DIFlags Flags, uint8_t CC, llvm::Metadata * TypeArray, llvm::Metadata::StorageType Storage, bool ShouldCreate = true)
  • public llvm::Metadata * getRawTypeArray() const
  • public llvm::DITypeRefArray getTypeArray() const
  • private ~DISubroutineType()

Inherited from DIType:

Inherited from DIScope:

Inherited from DINode:

Inherited from MDNode:

Inherited from Metadata:

Methods

DISubroutineType(
    llvm::LLVMContext& C,
    llvm::Metadata::StorageType Storage,
    llvm::DINode::DIFlags Flags,
    uint8_t CC,
    ArrayRef<llvm::Metadata*> Ops)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1273

Parameters

llvm::LLVMContext& C
llvm::Metadata::StorageType Storage
llvm::DINode::DIFlags Flags
uint8_t CC
ArrayRef<llvm::Metadata*> Ops

static bool classof(const llvm::Metadata* MD)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1316

Parameters

const llvm::Metadata* MD

llvm::TempDISubroutineType clone() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1300

llvm::TempDISubroutineType cloneImpl() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1288

llvm::TempDISubroutineType cloneWithCC(
    uint8_t CC) const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1302

Parameters

uint8_t CC

uint8_t getCC() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1308

static llvm::DISubroutineType* getImpl(
    llvm::LLVMContext& Context,
    llvm::DINode::DIFlags Flags,
    uint8_t CC,
    llvm::DITypeRefArray TypeArray,
    llvm::Metadata::StorageType Storage,
    bool ShouldCreate = true)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1277

Parameters

llvm::LLVMContext& Context
llvm::DINode::DIFlags Flags
uint8_t CC
llvm::DITypeRefArray TypeArray
llvm::Metadata::StorageType Storage
bool ShouldCreate = true

static llvm::DISubroutineType* getImpl(
    llvm::LLVMContext& Context,
    llvm::DINode::DIFlags Flags,
    uint8_t CC,
    llvm::Metadata* TypeArray,
    llvm::Metadata::StorageType Storage,
    bool ShouldCreate = true)

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1283

Parameters

llvm::LLVMContext& Context
llvm::DINode::DIFlags Flags
uint8_t CC
llvm::Metadata* TypeArray
llvm::Metadata::StorageType Storage
bool ShouldCreate = true

llvm::Metadata* getRawTypeArray() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1314

llvm::DITypeRefArray getTypeArray() const

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1310

~DISubroutineType()

Declared at: llvm/include/llvm/IR/DebugInfoMetadata.h:1275