; RUN: opt < %s -scalarrepl -S | \
; RUN:   not grep alloca

target datalayout = "E-p:32:32"
target triple = "powerpc-apple-darwin8.0.0"

define i64 @test1(i64 %X) {
	%A = alloca i64		; <i64*> [#uses=3]
	store i64 %X, i64* %A
	%B = bitcast i64* %A to i32*		; <i32*> [#uses=1]
	%C = bitcast i32* %B to i8*		; <i8*> [#uses=1]
	store i8 0, i8* %C
	%Y = load i64* %A		; <i64> [#uses=1]
	ret i64 %Y
}

define i8 @test2(i64 %X) {
	%X_addr = alloca i64		; <i64*> [#uses=2]
	store i64 %X, i64* %X_addr
	%tmp.0 = bitcast i64* %X_addr to i32*		; <i32*> [#uses=1]
	%tmp.1 = getelementptr i32* %tmp.0, i32 1		; <i32*> [#uses=1]
	%tmp.2 = bitcast i32* %tmp.1 to i8*		; <i8*> [#uses=1]
	%tmp.3 = getelementptr i8* %tmp.2, i32 3		; <i8*> [#uses=1]
	%tmp.2.upgrd.1 = load i8* %tmp.3		; <i8> [#uses=1]
	ret i8 %tmp.2.upgrd.1
}

define i16 @crafty(i64 %X) {
	%a = alloca { i64 }		; <{ i64 }*> [#uses=2]
	%tmp.0 = getelementptr { i64 }* %a, i32 0, i32 0		; <i64*> [#uses=1]
	store i64 %X, i64* %tmp.0
	%tmp.3 = bitcast { i64 }* %a to [4 x i16]*		; <[4 x i16]*> [#uses=2]
	%tmp.4 = getelementptr [4 x i16]* %tmp.3, i32 0, i32 3		; <i16*> [#uses=1]
	%tmp.5 = load i16* %tmp.4		; <i16> [#uses=1]
	%tmp.8 = getelementptr [4 x i16]* %tmp.3, i32 0, i32 2		; <i16*> [#uses=1]
	%tmp.9 = load i16* %tmp.8		; <i16> [#uses=1]
	%tmp.10 = or i16 %tmp.9, %tmp.5		; <i16> [#uses=1]
	ret i16 %tmp.10
}

define i16 @crafty2(i64 %X) {
	%a = alloca i64		; <i64*> [#uses=2]
	store i64 %X, i64* %a
	%tmp.3 = bitcast i64* %a to [4 x i16]*		; <[4 x i16]*> [#uses=2]
	%tmp.4 = getelementptr [4 x i16]* %tmp.3, i32 0, i32 3		; <i16*> [#uses=1]
	%tmp.5 = load i16* %tmp.4		; <i16> [#uses=1]
	%tmp.8 = getelementptr [4 x i16]* %tmp.3, i32 0, i32 2		; <i16*> [#uses=1]
	%tmp.9 = load i16* %tmp.8		; <i16> [#uses=1]
	%tmp.10 = or i16 %tmp.9, %tmp.5		; <i16> [#uses=1]
	ret i16 %tmp.10
}
