Re-implement the main strength-reduction portion of LoopStrengthReduction.
[oota-llvm.git] / test / CodeGen / X86 / 2007-07-18-Vector-Extract.ll
1 ; RUN: llc < %s -march=x86-64 -mattr=+sse | grep {movq  (%rdi), %rax}
2 ; RUN: llc < %s -march=x86-64 -mattr=+sse | grep {movq  8(%rdi), %rax}
3 define i64 @foo_0(<2 x i64>* %val) {
4 entry:
5         %val12 = getelementptr <2 x i64>* %val, i32 0, i32 0            ; <i64*> [#uses=1]
6         %tmp7 = load i64* %val12                ; <i64> [#uses=1]
7         ret i64 %tmp7
8 }
9
10 define i64 @foo_1(<2 x i64>* %val) {
11 entry:
12         %tmp2.gep = getelementptr <2 x i64>* %val, i32 0, i32 1         ; <i64*> [#uses=1]
13         %tmp4 = load i64* %tmp2.gep             ; <i64> [#uses=1]
14         ret i64 %tmp4
15 }