This is also a shorter encoding on SSE.
What should I do for the avx512 cases? Do you want me to add a fadd stage to force domain?
Paths
| Differential D39134
[X86][SSE] Add MOVHPSrm to domain tables AbandonedPublic Authored by RKSimon on Oct 20 2017, 12:04 PM.
Details
Summary This is also a shorter encoding on SSE. What should I do for the avx512 cases? Do you want me to add a fadd stage to force domain?
Diff Detail
Event Timeline
Comment Actions I'm going to abandon this and instead investigate adding custom domain switching (PR34873) - I'm concerned that MOVPS only references 64-bits on a load but PUNPCKLPD/PUNPCKLQDQ reference 128-bits.
Revision Contents
Diff 119679 lib/Target/X86/X86InstrInfo.cpp
test/CodeGen/X86/avx512-shuffle-schedule.ll
test/CodeGen/X86/avx512-shuffles/unpack.ll
test/CodeGen/X86/sse2.ll
test/CodeGen/X86/vector-rem.ll
|
Does moving from MOVHPS to UNPCKLPD cause us to potentially access unaligned memory? MOVHPS doesn't have an alignment requirement, but UNPCKLPD does.