1 ; RUN: opt < %s -reassociate -gvn -instcombine -S | not grep add
3 @a = weak global i32 0 ; <i32*> [#uses=1]
4 @b = weak global i32 0 ; <i32*> [#uses=1]
5 @c = weak global i32 0 ; <i32*> [#uses=1]
6 @d = weak global i32 0 ; <i32*> [#uses=0]
9 %tmp.0 = load i32* @a ; <i32> [#uses=2]
10 %tmp.1 = load i32* @b ; <i32> [#uses=2]
12 %tmp.2 = add i32 %tmp.0, %tmp.1 ; <i32> [#uses=1]
13 %tmp.4 = load i32* @c ; <i32> [#uses=2]
15 %tmp.5 = add i32 %tmp.2, %tmp.4 ; <i32> [#uses=1]
17 %tmp.8 = add i32 %tmp.0, %tmp.4 ; <i32> [#uses=1]
19 %tmp.11 = add i32 %tmp.8, %tmp.1 ; <i32> [#uses=1]
21 %RV = xor i32 %tmp.5, %tmp.11 ; <i32> [#uses=1]