aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/ExtractAPI/DeclarationFragments.cpp
diff options
context:
space:
mode:
authorJohannes Doerfert <johannes@jdoerfert.de>2023-01-27 12:10:07 -0800
committerJohannes Doerfert <johannes@jdoerfert.de>2023-08-18 16:44:05 -0700
commit9c08e76f3e5f2f3e8cb1e3c9fd45827395c712cc (patch)
tree65cb3356850573fdfa9602b0733b93f516a6d188 /clang/lib/ExtractAPI/DeclarationFragments.cpp
parent18b211cb15213f984b2014413b74958243a4805f (diff)
downloadllvm-9c08e76f3e5f2f3e8cb1e3c9fd45827395c712cc.zip
llvm-9c08e76f3e5f2f3e8cb1e3c9fd45827395c712cc.tar.gz
llvm-9c08e76f3e5f2f3e8cb1e3c9fd45827395c712cc.tar.bz2
[Attributor] Introduce AAIndirectCallInfo
AAIndirectCallInfo will collect information and specialize indirect call sites. It is similar to our IndirectCallPromotion but runs as part of the Attributor (so with assumed callee information). It also expands more calls and let's the rest of the pipeline figure out what is UB, for now. We use existing call promotion logic to improve the result, otherwise we rely on the (implicit) function pointer cast. This effectively "fixes" #60327 as it will undo the type punning early enough for the inliner to work with the (now specialized, thus direct) call. Fixes: https://github.com/llvm/llvm-project/issues/60327
Diffstat (limited to 'clang/lib/ExtractAPI/DeclarationFragments.cpp')
0 files changed, 0 insertions, 0 deletions