diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-02-07 21:20:11 +0000 |
|---|---|---|
| committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-02-07 21:20:11 +0000 |
| commit | cbc3b2fdc28228064a858df381812badd7833c5b (patch) | |
| tree | 790bdd17008eda3fd1af00e9d1015d49fcd75c19 /llvm/test/CodeGen/X86/stack-folding-int-avx1.ll | |
| parent | 3880bee0ff044e2ddd7790c45a919436123830f8 (diff) | |
| download | bcm5719-llvm-cbc3b2fdc28228064a858df381812badd7833c5b.tar.gz bcm5719-llvm-cbc3b2fdc28228064a858df381812badd7833c5b.zip | |
[X86][SSE] Added missing stack folding tests for (v)mpsadbw instruction
llvm-svn: 228506
Diffstat (limited to 'llvm/test/CodeGen/X86/stack-folding-int-avx1.ll')
| -rw-r--r-- | llvm/test/CodeGen/X86/stack-folding-int-avx1.ll | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/stack-folding-int-avx1.ll b/llvm/test/CodeGen/X86/stack-folding-int-avx1.ll index 6e32d8007fb..3880ce0ee6b 100644 --- a/llvm/test/CodeGen/X86/stack-folding-int-avx1.ll +++ b/llvm/test/CodeGen/X86/stack-folding-int-avx1.ll @@ -94,6 +94,15 @@ define i64 @stack_fold_movq_store(<2 x i64> %a0) { ret i64 %1 } +define <8 x i16> @stack_fold_mpsadbw(<16 x i8> %a0, <16 x i8> %a1) { + ;CHECK-LABEL: stack_fold_mpsadbw + ;CHECK: vmpsadbw $7, {{-?[0-9]*}}(%rsp), {{%xmm[0-9][0-9]*}}, {{%xmm[0-9][0-9]*}} {{.*#+}} 16-byte Folded Reload + %1 = tail call <2 x i64> asm sideeffect "nop", "=x,~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{flags}"() + %2 = call <8 x i16> @llvm.x86.sse41.mpsadbw(<16 x i8> %a0, <16 x i8> %a1, i8 7) + ret <8 x i16> %2 +} +declare <8 x i16> @llvm.x86.sse41.mpsadbw(<16 x i8>, <16 x i8>, i8) nounwind readnone + define <16 x i8> @stack_fold_pabsb(<16 x i8> %a0) { ;CHECK-LABEL: stack_fold_pabsb ;CHECK: vpabsb {{-?[0-9]*}}(%rsp), {{%xmm[0-9][0-9]*}} {{.*#+}} 16-byte Folded Reload |

