A pass to do RPO deduction and propagation of function attributes.
Declared in <llvm/Transforms/IPO/FunctionAttrs.h>
class ReversePostOrderFunctionAttrsPass
: public OptionalPassInfoMixin<ReversePostOrderFunctionAttrsPass>
This pass provides a general RPO or "top down" propagation of function attributes. For a few (rare) cases, we can deduce significantly more about function attributes by working in RPO, so this pass provides the complement to the post-order pass above where the majority of deduction is performed.
| Name | Description |
|---|---|
OptionalPassInfoMixin<ReversePostOrderFunctionAttrsPass> | A CRTP mix-in for passes that can be skipped. |
| Name | Description |
|---|---|
run | Run reverse post-order function attribute deduction over the module. |
| Name | Description |
|---|---|
isRequired | Return false; optional passes may be skipped. |