summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/extractelement-index.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/X86/extractelement-index.ll')
-rw-r--r--test/CodeGen/X86/extractelement-index.ll12
1 files changed, 4 insertions, 8 deletions
diff --git a/test/CodeGen/X86/extractelement-index.ll b/test/CodeGen/X86/extractelement-index.ll
index 4d24a15fe2e1..66bdfb8475f1 100644
--- a/test/CodeGen/X86/extractelement-index.ll
+++ b/test/CodeGen/X86/extractelement-index.ll
@@ -403,16 +403,14 @@ define i8 @extractelement_v16i8_var(<16 x i8> %a, i256 %i) nounwind {
; SSE: # %bb.0:
; SSE-NEXT: andl $15, %edi
; SSE-NEXT: movaps %xmm0, -{{[0-9]+}}(%rsp)
-; SSE-NEXT: leaq -{{[0-9]+}}(%rsp), %rax
-; SSE-NEXT: movb (%rdi,%rax), %al
+; SSE-NEXT: movb -24(%rsp,%rdi), %al
; SSE-NEXT: retq
;
; AVX-LABEL: extractelement_v16i8_var:
; AVX: # %bb.0:
; AVX-NEXT: andl $15, %edi
; AVX-NEXT: vmovaps %xmm0, -{{[0-9]+}}(%rsp)
-; AVX-NEXT: leaq -{{[0-9]+}}(%rsp), %rax
-; AVX-NEXT: movb (%rdi,%rax), %al
+; AVX-NEXT: movb -24(%rsp,%rdi), %al
; AVX-NEXT: retq
%b = extractelement <16 x i8> %a, i256 %i
ret i8 %b
@@ -428,8 +426,7 @@ define i8 @extractelement_v32i8_var(<32 x i8> %a, i256 %i) nounwind {
; SSE-NEXT: andl $31, %edi
; SSE-NEXT: movaps %xmm1, {{[0-9]+}}(%rsp)
; SSE-NEXT: movaps %xmm0, (%rsp)
-; SSE-NEXT: movq %rsp, %rax
-; SSE-NEXT: movb (%rdi,%rax), %al
+; SSE-NEXT: movb (%rsp,%rdi), %al
; SSE-NEXT: movq %rbp, %rsp
; SSE-NEXT: popq %rbp
; SSE-NEXT: retq
@@ -442,8 +439,7 @@ define i8 @extractelement_v32i8_var(<32 x i8> %a, i256 %i) nounwind {
; AVX-NEXT: subq $64, %rsp
; AVX-NEXT: andl $31, %edi
; AVX-NEXT: vmovaps %ymm0, (%rsp)
-; AVX-NEXT: movq %rsp, %rax
-; AVX-NEXT: movb (%rdi,%rax), %al
+; AVX-NEXT: movb (%rsp,%rdi), %al
; AVX-NEXT: movq %rbp, %rsp
; AVX-NEXT: popq %rbp
; AVX-NEXT: vzeroupper