aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2021-07-23 09:01:26 -0400
committerSanjay Patel <spatel@rotateright.com>2021-07-23 09:39:32 -0400
commitf060aa1cf3f42ca967c3f63e18381d3579bb12d9 (patch)
treed28e84bdfd765e65e66997fa582ebd33d6c28f7c /clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
parent028eb436546a75a434931f9bbbb073b353920a74 (diff)
downloadllvm-f060aa1cf3f42ca967c3f63e18381d3579bb12d9.zip
llvm-f060aa1cf3f42ca967c3f63e18381d3579bb12d9.tar.gz
llvm-f060aa1cf3f42ca967c3f63e18381d3579bb12d9.tar.bz2
[x86] improve CMOV codegen by pushing add into operands
This is not the transform direction we want in general, but by the time we have a CMOV, we've already tried everything else that could be better. The transform increases the uses of the other add operand, but that is safe according to Alive2: https://alive2.llvm.org/ce/z/Yn6p-A We could probably extend this to other binops (not just add). This is the motivating pattern discussed in: https://llvm.org/PR51069 The test with i8 shows a missed fold because there's a trunc sitting in front of the add. That can be handled with a small follow-up. Differential Revision: https://reviews.llvm.org/D106607
Diffstat (limited to 'clang/lib/Frontend/CreateInvocationFromCommandLine.cpp')
0 files changed, 0 insertions, 0 deletions