[PATCH] D50328: [X86][SSE] Combine (some) target shuffles with multiple uses
Simon Pilgrim via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 9 02:24:44 PDT 2018
RKSimon added a comment.
ping?
================
Comment at: test/CodeGen/X86/2012-01-12-extract-sv.ll:12
+; CHECK-NEXT: vblendps {{.*#+}} xmm1 = xmm1[0],xmm2[1,2,3]
+; CHECK-NEXT: vpermilps {{.*#+}} xmm0 = xmm0[0,0,0,0]
; CHECK-NEXT: vinsertf128 $1, %xmm0, %ymm0, %ymm0
----------------
RKSimon wrote:
> greened wrote:
> > Can we make this test less brittle by using FileCheck variables? This goes for pretty much every test in this patch.
> I'm sorry but no - its been repeatedly proven that using update_llc_test_checks.py on the majority of x86 tests is the way forward - it speeds up creation of tests (x86 by far has the highest test coverage), makes regeneration of checks trivial and it prevents dodgy code being 'hidden' (either on purpose or by accident). Additionally many x86 subtargets have different instruction behaviours depending on the registers used so hidng the registers behind regexps make it that more difficult to track.
Just to be clear, this isn't just a regalloc diff - there is a codegen change here - the xmm0 value on line 12 is no longer dependent on the pervious perm that was on line 9.
================
Comment at: test/CodeGen/X86/avx512-intrinsics-fast-isel.ll:6498
+; X86-NEXT: vpmuludq %xmm3, %xmm1, %xmm3
+; X86-NEXT: vpaddq %xmm2, %xmm3, %xmm2
; X86-NEXT: vpsllq $32, %xmm2, %xmm2
----------------
greened wrote:
> Make this less brittle with FileCheck variables.
Again, there is a codegen change here.
Repository:
rL LLVM
https://reviews.llvm.org/D50328
More information about the llvm-commits
mailing list