class SubsumingPositionIterator

Declaration

class SubsumingPositionIterator { /* full declaration omitted */ };

Description

A visitor class for IR positions. Given a position P, the SubsumingPositionIterator allows to visit "subsuming positions" wrt. attributes/information. Thus, if a piece of information holds for a subsuming position, it also holds for the position P. The subsuming positions always include the initial position and then, depending on the position kind, additionally the following ones: - for IRP_RETURNED: - the function (IRP_FUNCTION) - for IRP_ARGUMENT: - the function (IRP_FUNCTION) - for IRP_CALL_SITE: - the callee (IRP_FUNCTION), if known - for IRP_CALL_SITE_RETURNED: - the callee (IRP_RETURNED), if known - the call site (IRP_FUNCTION) - the callee (IRP_FUNCTION), if known - for IRP_CALL_SITE_ARGUMENT: - the argument of the callee (IRP_ARGUMENT), if known - the callee (IRP_FUNCTION), if known - the position the call site argument is associated with if it is not anchored to the call site, e.g., if it is an argument then the argument (IRP_ARGUMENT)

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:516

Method Overview

  • public SubsumingPositionIterator(const llvm::IRPosition & IRP)
  • public llvm::SubsumingPositionIterator::iterator begin()
  • public llvm::SubsumingPositionIterator::iterator end()

Methods

SubsumingPositionIterator(
    const llvm::IRPosition& IRP)

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:521

Parameters

const llvm::IRPosition& IRP

llvm::SubsumingPositionIterator::iterator begin()

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:522

llvm::SubsumingPositionIterator::iterator end()

Declared at: llvm/include/llvm/Transforms/IPO/Attributor.h:523