[PATCH] D42042: [X86][SSE] Add custom execution domain fixing for BLENDPD/BLENDPS/PBLENDD/PBLENDW (PR34873)
Simon Pilgrim via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Jan 14 12:29:20 PST 2018
RKSimon marked 4 inline comments as done.
RKSimon added inline comments.
================
Comment at: lib/Target/X86/X86InstrInfo.cpp:10098
+ if (Subtarget.hasAVX2()) {
+ if (AdjustBlendMask(Imm, ImmWidth, Is256 ? 8 : 4, &NewImm))
+ table = lookup(Opcode, dom, ReplaceableCustomAVX2Instrs);
----------------
craig.topper wrote:
> This doesn't work if we ever start with a BLENDW that could be represented with a BLENDD right? We'd find the BLENDW in the table search and keep that opcode, but give it a BLENDD immediate?
What should happen is if a PBLENDW mask ends up back here then it can be re-scaled as a PBLENDD, else it'll drop down to PBLENDW again.
Repository:
rL LLVM
https://reviews.llvm.org/D42042
More information about the llvm-commits
mailing list