; RUN: llvm-as < %s | llc -march=x86 

target endian = big         ; We need the byteswaps for this test!
target pointersize = 64

implementation

long %main(long %s.1, long %e.1, ushort* %foo) {
	%tmp.28 = load ushort* %foo
	%tmp.39 = cast uint 0 to ushort*
	%tmp.42 = sub long %e.1, %s.1
	%tmp.441 = setge long %tmp.42, 0
	%tmp.54 = getelementptr ushort* %tmp.39, long 0
	ret long %s.1
}