1; RUN: not --crash llc -mtriple powerpc-ibm-aix-xcoff -stop-after=machine-cp \
2; RUN:   -mcpu=pwr4 -mattr=-altivec -verify-machineinstrs 2>&1 < %s | FileCheck  %s
3
4; RUN: not --crash llc -mtriple powerpc64-ibm-aix-xcoff -stop-after=machine-cp \
5; RUN:   -mcpu=pwr4 -mattr=-altivec -verify-machineinstrs 2>&1 < %s | FileCheck  %s
6
7; CHECK: LLVM ERROR: Passing ByVals split between registers and stack not yet implemented.
8
9%struct.Spill = type { [12 x i64 ] }
10@GS = external global %struct.Spill, align 4
11
12define i64 @test(%struct.Spill* byval(%struct.Spill) align 4 %s) {
13entry:
14  %arrayidx_a = getelementptr inbounds %struct.Spill, %struct.Spill* %s, i32 0, i32 0, i32 2
15  %arrayidx_b = getelementptr inbounds %struct.Spill, %struct.Spill* %s, i32 0, i32 0, i32 10
16  %a = load i64, i64* %arrayidx_a
17  %b = load i64, i64* %arrayidx_b
18  %add = add i64 %a, %b
19  ret i64 %add
20}
21