[PATCH] D45146: [x86] Introduce a pass to begin more systematically fixing PR36028 and similar issues.
Chandler Carruth via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 4 22:11:04 PDT 2018
chandlerc added inline comments.
================
Comment at: llvm/lib/Target/X86/X86FlagsCopyLowering.cpp:615
+ Cond = X86::COND_B; // CF == 1
+ Addend = 127;
+ break;
----------------
rnk wrote:
> craig.topper wrote:
> > I think these Addend values are backwards. 255 would work for carry, and 127 would work for overflow
> I confirmed this with assembly. You might want to do some multi-precision ADDC execution tests locally to validate the change after fixing this.
I tried sooooo many tests, included a bunch of high-precision arithmetic library tests... Nothing failed. =[ The only thing I've seen actually hit this code path is the mul-i1024.ll regression test ironically.
Maybe I can kill two birds with one stone by moving mul-i1024.ll to instead be a bitcode test of basic arithmetic. Anyways, any reason to not commit with this fixed?
Repository:
rL LLVM
https://reviews.llvm.org/D45146
More information about the llvm-commits
mailing list