aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenFunction.cpp
diff options
context:
space:
mode:
authorJohannes Doerfert <johannes@jdoerfert.de>2020-01-23 17:12:56 -0600
committerJohannes Doerfert <johannes@jdoerfert.de>2020-02-12 17:36:38 -0600
commitb2c76002caae91689e94d4ddd2bf4c3474e82066 (patch)
tree03843c6e34f54e49a20162975aacdcdb6ac8092b /clang/lib/CodeGen/CodeGenFunction.cpp
parent86509e8c3b846ec8f5264be8b3f53a4bef8e83e8 (diff)
downloadllvm-b2c76002caae91689e94d4ddd2bf4c3474e82066.zip
llvm-b2c76002caae91689e94d4ddd2bf4c3474e82066.tar.gz
llvm-b2c76002caae91689e94d4ddd2bf4c3474e82066.tar.bz2
[Attributor] Ignore uses if a value is simplified
If we have a replacement for a value, via AAValueSimplify, the original value will lose all its uses. Thus, as long as a value is simplified we can skip the uses in checkForAllUses, given that these uses are transitive uses for the simplified version and will therefore affect the simplified version as necessary. Since this allowed us to remove calls without side-effects and a known return value, we need to make sure not to eliminate `musttail` calls. Those we keep around, or later remove the entire `musttail` call chain.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
0 files changed, 0 insertions, 0 deletions