HomePhabricator

Add CalledValuePropagation pass

Authored by mssimpso on Oct 25 2017, 6:40 AM.

Description

Add CalledValuePropagation pass

This patch adds a new pass for attaching !callees metadata to indirect call
sites. The pass propagates values to call sites by performing an IPSCCP-like
analysis using the generic sparse propagation solver. For indirect call sites
having a small set of possible callees, the attached metadata indicates what
those callees are. The metadata can be used to facilitate optimizations like
intersecting the function attributes of the possible callees, refining the call
graph, performing indirect call promotion, etc.

Differential Revision: https://reviews.llvm.org/D37355

llvm-svn: 316576

Details

Committed
mssimpsoOct 25 2017, 6:40 AM
Differential Revision
D37355: Add CalledValuePropagation pass
Parents
rG7af3edc4f4f1: [mips] Clean up some whitespace (NFC).
Branches
Unknown
Tags
Unknown