Add testcase for PR3795.
[oota-llvm.git] / test / CodeGen / ARM / 2009-04-08-AggregateAddr.ll
1 ; RUN: llvm-as < %s | llc -march=arm
2 ; PR3795
3
4 define fastcc void @_D3foo3fooFAriZv({ i32, { double, double }* } %d_arg, i32 %x_arg) {
5 entry:
6         %d = alloca { i32, { double, double }* }                ; <{ i32, { double, double }* }*> [#uses=2]
7         %x = alloca i32         ; <i32*> [#uses=2]
8         %b = alloca { double, double }          ; <{ double, double }*> [#uses=1]
9         store { i32, { double, double }* } %d_arg, { i32, { double, double }* }* %d
10         store i32 %x_arg, i32* %x
11         %tmp = load i32* %x             ; <i32> [#uses=1]
12         %tmp1 = getelementptr { i32, { double, double }* }* %d, i32 0, i32 1            ; <{ double, double }**> [#uses=1]
13         %.ptr = load { double, double }** %tmp1         ; <{ double, double }*> [#uses=1]
14         %tmp2 = getelementptr { double, double }* %.ptr, i32 %tmp               ; <{ double, double }*> [#uses=1]
15         %tmp3 = load { double, double }* %tmp2          ; <{ double, double }> [#uses=1]
16         store { double, double } %tmp3, { double, double }* %b
17         ret void
18 }