[Attributor] IPO across non-amenable call edges #172
Labels
gsoc
Google Summer of Code
help wanted
Indicates that a maintainer wants help. Not [good first issue].
ipo
Interprocedural optimizations
metabug
Issue to collect references to a group of similar or related issues.
If a function is externally visible, the address is potentially taken, or certain uses are non-trivial, we are conservative when it comes to inter-procedural optimizations (IPO). That is, we do not propagate information from the call sites we know to the called function (=callee). Similarly, when the function has a non-exact definition we do not propagate information from the called function we see to the call sites.
To mitigate both problems we can "internalize" the function, or put differently, specialize the called function (the one we see) to (a subset of) the call sites we see.
Prototypes of what we need are available already D63312 and D63319 especially.
This metabug is to allow us to track the overall task as we split it up in smaller chunks. Thus, we expect this bug to be edited as we go.
Attributor::QueryMap
. We need functions to print the dependence graph, determine sub-graphs that contain a set of specified nodes, ... A new issue will be created for this.dereferenceable
on a pointer argument is worth almost nothing if it is not used but potentially quite useful if it is loaded from in a loop, even more if it is additionallyreadonly
andnoalias
, etc.The text was updated successfully, but these errors were encountered: