[all-commits] [llvm/llvm-project] a3d489: [X86] Add a DAG combine for (i32 (sext (i8 (x86isd...
topperc via All-commits
all-commits at lists.llvm.org
Tue Feb 4 22:42:53 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: a3d489e87e8243bdb0eff947a38006b039dff8c0
https://github.com/llvm/llvm-project/commit/a3d489e87e8243bdb0eff947a38006b039dff8c0
Author: Craig Topper <craig.topper at gmail.com>
Date: 2020-02-04 (Tue, 04 Feb 2020)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/test/CodeGen/X86/copy-eflags.ll
Log Message:
-----------
[X86] Add a DAG combine for (i32 (sext (i8 (x86isd::setcc_carry)))) -> (i32 (x86isd::setcc_carry)) and remove isel patterns.
Same for any_extend though we don't have coverage for that.
The test changes are because isel didn't check one use of the
setcc_carry. So in isel we would end up with two different
sized setcc_carry instructions. And since it clobbers
the flags we would need to recreate the flags for the second
instruction.
This code handles additional uses by truncating the new wide
setcc_carry back to the original size for those uses.
More information about the All-commits
mailing list