aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
diff options
context:
space:
mode:
authorSerge Pavlov <sepavloff@gmail.com>2022-05-05 12:02:42 +0700
committerSerge Pavlov <sepavloff@gmail.com>2022-05-05 12:02:42 +0700
commit83914ee96fc2d828e1cfb8913f5d156d39150e2c (patch)
tree369ce01005667a75dd7c8ae5e89adb853ab67006 /clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
parent2417de2758c306c5509782400ba9e0bb70851989 (diff)
downloadllvm-83914ee96fc2d828e1cfb8913f5d156d39150e2c.zip
llvm-83914ee96fc2d828e1cfb8913f5d156d39150e2c.tar.gz
llvm-83914ee96fc2d828e1cfb8913f5d156d39150e2c.tar.bz2
[InstCombine] Remove side effect of replaced constrained intrinsics
If a constrained intrinsic call was replaced by some value, it was not removed in some cases. The dangling instruction resulted in useless instructions executed in runtime. It happened because constrained intrinsics usually have side effect, it is used to model the interaction with floating-point environment. In some cases it is correct behavior but often the side effect is actually absent or can be ignored. This change adds specific treatment of constrained intrinsics so that their side effect can be removed if it actually absents. Differential Revision: https://reviews.llvm.org/D118426
Diffstat (limited to 'clang/lib/Frontend/CreateInvocationFromCommandLine.cpp')
0 files changed, 0 insertions, 0 deletions