diff options
| author | Duncan Sands <baldrick@free.fr> | 2012-06-29 13:25:06 +0000 |
|---|---|---|
| committer | Duncan Sands <baldrick@free.fr> | 2012-06-29 13:25:06 +0000 |
| commit | 369c6d270b8bf58faf3f8cdeb3b030dfe6c4f26b (patch) | |
| tree | 2178480bf7a734115a5f07d5266cfc6b8f9a3773 /llvm/test/Transforms/Reassociate | |
| parent | d32d537d63c01bbc8e060c1ffca6820a188a703d (diff) | |
| download | bcm5719-llvm-369c6d270b8bf58faf3f8cdeb3b030dfe6c4f26b.tar.gz bcm5719-llvm-369c6d270b8bf58faf3f8cdeb3b030dfe6c4f26b.zip | |
Fix a reassociate crash on sozefx when compiling with dragonegg+gcc-4.7 due to
the optimizers producing a multiply expression with more multiplications than
the original (!).
llvm-svn: 159426
Diffstat (limited to 'llvm/test/Transforms/Reassociate')
| -rw-r--r-- | llvm/test/Transforms/Reassociate/crash.ll | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/test/Transforms/Reassociate/crash.ll b/llvm/test/Transforms/Reassociate/crash.ll index a99c844f01a..ce586e15fbc 100644 --- a/llvm/test/Transforms/Reassociate/crash.ll +++ b/llvm/test/Transforms/Reassociate/crash.ll @@ -133,3 +133,14 @@ define i8 @f0(i8 %x) { %t7 = mul i8 %t6, %t0 ret i8 %t7 } + +define i32 @sozefx_(i32 %x, i32 %y) { + %t0 = sub i32 %x, %x + %t1 = mul i32 %t0, %t0 + %t2 = mul i32 %x, %t0 + %t3 = mul i32 %t1, %t1 + %t4 = add i32 %t2, %t3 + %t5 = mul i32 %x, %y + %t6 = add i32 %t4, %t5 + ret i32 %t6 +} |

