[PATCH] [X86] canonicalize a v2f64 blendi of 2 registers

Sanjay Patel spatel at rotateright.com
Thu Feb 19 16:08:03 PST 2015


Hi chandlerc, qcolombet, andreadb, RKSimon,

This canonicalization step saves us 3 pattern matching possibilities * 4 math ops for scalar math that uses xmm regs.

The tests in llvm/test/CodeGen/X86/sse-scalar-fp-arith.ll cover this scenario already, so I don't think we need to add any more tests.

Is it possible to add an assert to make sure we're not bypassing this canonicalization? Where would it go?

Also, I'm assuming that we don't turn this into a 'movsd' because of its partial register update, but should there be a 'FIXME' comment here when optimizing for size because 'movsd' is 2 bytes shorter?

http://reviews.llvm.org/D7777

Files:
  lib/Target/X86/X86ISelLowering.cpp
  lib/Target/X86/X86InstrSSE.td

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D7777.20350.patch
Type: text/x-patch
Size: 4319 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150220/bca589dd/attachment.bin>


More information about the llvm-commits mailing list