When we iterate over uses of functions and expect them to be call sites,
we now use abstract call sites to allow callback calls.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
- Build Status
Buildable 38386 Build 38385: arc lint + arc unit
Event Timeline
llvm/lib/Transforms/IPO/Attributor.cpp | ||
---|---|---|
597–598 | I couldn't understand this. Could you show me an example? |
llvm/lib/Transforms/IPO/Attributor.cpp | ||
---|---|---|
597–598 | In the test case, the first two arguments of t0_callback_callee are not mapped to the call site in t0_caller but the values are provided by t0_callback_broker. That means we cannot deduce anything for them. The test is constructed in a way to make sure we do not propagate information into these arguments, e.g., we do not replace the first with null and we do not add the 128 alignment to the second. These deductions would happen if we just looked at the call site with the same argument number but since we use the abstract call site it returns "no corresponding position found" instead. Does that make some sense? |
I couldn't understand this. Could you show me an example?