A visitor class for IR positions.

Synopsis

Declared in <llvm/Transforms/IPO/Attributor.h>

class SubsumingPositionIterator;

Description

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)

Member Functions

Name

Description

SubsumingPositionIterator [constructor]

Construct an iterator over subsuming IR positions.

begin

Return an iterator to the first subsuming IR position.

end

Return an iterator past the last subsuming IR position.

Created with MrDocs