blob: 168b640c9e759b95085d26a2c7f5d0a6a96e5fe2 [file] [log] [blame]
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001; RUN: llvm-upgrade < %s | llvm-as | opt -basicaa -load-vn -gcse -instcombine | llvm-dis | not grep sub
2
3%S = type { int, sbyte }
4
5sbyte %test(sbyte** %P) {
6 %A = load sbyte** %P
7 %B = load sbyte* %A
8
9 %X = load sbyte** %P
10 %Y = load sbyte* %X
11
12 %R = sub sbyte %B, %Y
13 ret sbyte %R
14}
15
16sbyte %test(%S ** %P) {
17 %A = load %S** %P
18 %B = getelementptr %S* %A, int 0, uint 1
19 %C = load sbyte* %B
20
21 %X = load %S** %P
22 %Y = getelementptr %S* %X, int 0, uint 1
23 %Z = load sbyte* %Y
24
25 %R = sub sbyte %C, %Z
26 ret sbyte %R
27}