llvm::DeadArgumentEliminationPass::Uses

Multimap from each return or argument to the MaybeLive values it uses.

Synopsis

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

UseMap Uses;

Description

This maps a return value or argument to any MaybeLive return values or arguments it uses. This allows the MaybeLive values to be marked live when any of its users is marked live. For example (indices are left out for clarity):

  • Uses[ret F]= ret G This means that F calls G, and F returns the value returned by G.

  • Uses[arg F]= ret G This means that some function calls G and passes its result as an argument to F.

  • Uses[ret F]= arg F This means that F returns one of its own arguments.

  • Uses[arg F]= arg G This means that G calls F and passes one of its own (G's) arguments directly to F.