xref: /llvm-project/llvm/test/CodeGen/X86/2007-07-18-Vector-Extract.ll (revision 2f448bf509432c1a19ec46ab8cbc7353c03c6280)
1; RUN: llc < %s -mtriple=x86_64-linux -mattr=+sse | FileCheck %s
2; RUN: llc < %s -mtriple=x86_64-win32 -mattr=+sse | FileCheck %s
3; CHECK: movq ([[A0:%rdi|%rcx]]), %rax
4; CHECK: movq 8([[A0]]), %rax
5define i64 @foo_0(ptr %val) {
6entry:
7        %val12 = getelementptr <2 x i64>, ptr %val, i32 0, i32 0            ; <ptr> [#uses=1]
8        %tmp7 = load i64, ptr %val12                ; <i64> [#uses=1]
9        ret i64 %tmp7
10}
11
12define i64 @foo_1(ptr %val) {
13entry:
14        %tmp2.gep = getelementptr <2 x i64>, ptr %val, i32 0, i32 1         ; <ptr> [#uses=1]
15        %tmp4 = load i64, ptr %tmp2.gep             ; <i64> [#uses=1]
16        ret i64 %tmp4
17}
18