This patch adds patterns to match SSE (shufpd) and AVX (vpermilpd) shuffle codegen when storing the high element of a v2f64. The existing patterns were only checking for an unpckh type of shuffle. ( http://llvm.org/bugs/show_bug.cgi?id=21791 )
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
Hi Sanjay,
I suggest to leave the store pattern for unpck inside.
All other LGTM
- Elena
llvm/trunk/lib/Target/X86/X86InstrSSE.td | ||
---|---|---|
1381–1385 ↗ | (On Diff #17117) | The types on the output pattern aren't needed any more, so you can do: (MOVHPDmr $dst, $src) Also, you can use types instead of register class on the input patterns. |
llvm/trunk/lib/Target/X86/X86InstrSSE.td | ||
---|---|---|
1381–1385 ↗ | (On Diff #17117) | If I remove the types on that output line, I get an error: Something in the definition also needs to change for that to work? |