class AttributeListImpl

Declaration

class AttributeListImpl : public Node, private TrailingObjects { /* full declaration omitted */ };

Description

This class represents a set of attributes that apply to the function, return type, and parameters.

Declared at: llvm/lib/IR/AttributeImpl.h:282

Inherits from: FoldingSetBase::Node, TrailingObjects

Member Variables

private unsigned int NumAttrSets
Number of entries in this set.
private llvm::AttributeBitSet AvailableFunctionAttrs
Available enum function attributes.
private llvm::AttributeBitSet AvailableSomewhereAttrs
Union of enum attributes available at any index.

Method Overview

  • public AttributeListImpl(ArrayRef<llvm::AttributeSet> Sets)
  • public AttributeListImpl(const llvm::AttributeListImpl &)
  • public void Profile(llvm::FoldingSetNodeID & ID) const
  • public static void Profile(llvm::FoldingSetNodeID & ID, ArrayRef<llvm::AttributeSet> Nodes)
  • public llvm::AttributeListImpl::iterator begin() const
  • public void dump() const
  • public llvm::AttributeListImpl::iterator end() const
  • public bool hasAttrSomewhere(Attribute::AttrKind Kind, unsigned int * Index = nullptr) const
  • public bool hasFnAttribute(Attribute::AttrKind Kind) const
  • private size_t numTrailingObjects(OverloadToken<llvm::AttributeSet>)

Inherited from FoldingSetBase::Node:

Methods

AttributeListImpl(
    ArrayRef<llvm::AttributeSet> Sets)

Declared at: llvm/lib/IR/AttributeImpl.h:299

Parameters

ArrayRef<llvm::AttributeSet> Sets

AttributeListImpl(const llvm::AttributeListImpl&)

Declared at: llvm/lib/IR/AttributeImpl.h:302

Parameters

const llvm::AttributeListImpl&

void Profile(llvm::FoldingSetNodeID& ID) const

Declared at: llvm/lib/IR/AttributeImpl.h:322

Parameters

llvm::FoldingSetNodeID& ID

static void Profile(
    llvm::FoldingSetNodeID& ID,
    ArrayRef<llvm::AttributeSet> Nodes)

Declared at: llvm/lib/IR/AttributeImpl.h:323

Parameters

llvm::FoldingSetNodeID& ID
ArrayRef<llvm::AttributeSet> Nodes

llvm::AttributeListImpl::iterator begin() const

Declared at: llvm/lib/IR/AttributeImpl.h:319

void dump() const

Declared at: llvm/lib/IR/AttributeImpl.h:325

llvm::AttributeListImpl::iterator end() const

Declared at: llvm/lib/IR/AttributeImpl.h:320

bool hasAttrSomewhere(
    Attribute::AttrKind Kind,
    unsigned int* Index = nullptr) const

Description

Return true if the specified attribute is set for at least one parameter or for the return value. If Index is not nullptr, the index of a parameter with the specified attribute is provided.

Declared at: llvm/lib/IR/AttributeImpl.h:314

Parameters

Attribute::AttrKind Kind
unsigned int* Index = nullptr

bool hasFnAttribute(
    Attribute::AttrKind Kind) const

Description

Return true if the AttributeSet or the FunctionIndex has an enum attribute of the given kind.

Declared at: llvm/lib/IR/AttributeImpl.h:307

Parameters

Attribute::AttrKind Kind

size_t numTrailingObjects(
    OverloadToken<llvm::AttributeSet>)

Declared at: llvm/lib/IR/AttributeImpl.h:296

Parameters

OverloadToken<llvm::AttributeSet>