summaryrefslogtreecommitdiff
path: root/test/Transforms/InstCombine/2006-06-28-infloop.ll
blob: bd1dbd009c0ab9fbad348b02a39e3a0453456769 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
; RUN: llvm-upgrade < %s | llvm-as | opt -instcombine -disable-output
target endian = big
target pointersize = 32
target triple = "powerpc-apple-darwin8"

implementation   ; Functions:

void %test() {
entry:
	%tmp = getelementptr { long, long, long, long }* null, int 0, uint 3
	%tmp = load long* %tmp		; <long> [#uses=1]
	%tmp8.ui = load ulong* null		; <ulong> [#uses=1]
	%tmp8 = cast ulong %tmp8.ui to long		; <long> [#uses=1]
	%tmp9 = and long %tmp8, %tmp		; <long> [#uses=1]
	%sext = cast long %tmp9 to int		; <int> [#uses=1]
	%tmp27.i = cast int %sext to long		; <long> [#uses=1]
	tail call void %foo( uint 0, long %tmp27.i )
	unreachable
}

declare void %foo(uint, long)