llvm-6502/test/Analysis/LoadVN/dependent_loads.ll
Reid Spencer e5d4efa63e Promote GEP ubyte indices to uint. Backwards compatibility for 1.2 and
older features will be dropped soon and these test cases must not rely
on the upgrade capability.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31896 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-23 15:14:52 +00:00

28 lines
499 B
LLVM

; RUN: llvm-as < %s | opt -basicaa -load-vn -gcse -instcombine | llvm-dis | not grep sub
%S = type { int, sbyte }
sbyte %test(sbyte** %P) {
%A = load sbyte** %P
%B = load sbyte* %A
%X = load sbyte** %P
%Y = load sbyte* %X
%R = sub sbyte %B, %Y
ret sbyte %R
}
sbyte %test(%S ** %P) {
%A = load %S** %P
%B = getelementptr %S* %A, int 0, uint 1
%C = load sbyte* %B
%X = load %S** %P
%Y = getelementptr %S* %X, int 0, uint 1
%Z = load sbyte* %Y
%R = sub sbyte %C, %Z
ret sbyte %R
}