diff options
Diffstat (limited to 'test/CodeGen/PowerPC/addi-reassoc.ll')
-rw-r--r-- | test/CodeGen/PowerPC/addi-reassoc.ll | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/CodeGen/PowerPC/addi-reassoc.ll b/test/CodeGen/PowerPC/addi-reassoc.ll new file mode 100644 index 0000000..753f628 --- /dev/null +++ b/test/CodeGen/PowerPC/addi-reassoc.ll @@ -0,0 +1,20 @@ +; RUN: llvm-upgrade < %s | llvm-as | llc -march=ppc32 | not grep addi + + %struct.X = type { [5 x sbyte] } +implementation ; Functions: + +int %test1([4 x int]* %P, int %i) { + %tmp.2 = add int %i, 2 ; <int> [#uses=1] + %tmp.4 = getelementptr [4 x int]* %P, int %tmp.2, int 1 + %tmp.5 = load int* %tmp.4 + ret int %tmp.5 +} + +int %test2(%struct.X* %P, int %i) { + %tmp.2 = add int %i, 2 + %tmp.5 = getelementptr %struct.X* %P, int %tmp.2, uint 0, int 1 + %tmp.6 = load sbyte* %tmp.5 + %tmp.7 = cast sbyte %tmp.6 to int + ret int %tmp.7 +} + |