diff options
| author | Nick Lewycky <nicholas@mxc.ca> | 2008-07-09 04:32:37 +0000 |
|---|---|---|
| committer | Nick Lewycky <nicholas@mxc.ca> | 2008-07-09 04:32:37 +0000 |
| commit | 0d3645e67357a72c93d9f6c3f93d58e4cdde15ca (patch) | |
| tree | 5420a9708668ad432bdd40dc83eee49b69ba2d0b /llvm/test | |
| parent | a6ce3cee2f48bbd0b73f8fe88e144832a704340b (diff) | |
| download | bcm5719-llvm-0d3645e67357a72c93d9f6c3f93d58e4cdde15ca.tar.gz bcm5719-llvm-0d3645e67357a72c93d9f6c3f93d58e4cdde15ca.zip | |
Reduce x - y to -y when we know the 'x' part will get masked off anyways.
llvm-svn: 53271
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/Transforms/InstCombine/2008-07-08-SubAnd.ll | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/2008-07-08-SubAnd.ll b/llvm/test/Transforms/InstCombine/2008-07-08-SubAnd.ll new file mode 100644 index 00000000000..bf3afb9e3bb --- /dev/null +++ b/llvm/test/Transforms/InstCombine/2008-07-08-SubAnd.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | opt -instcombine | llvm-dis | grep -v {i32 8} +; PR2330 + +define i32 @a(i32 %a) nounwind { +entry: + %tmp2 = sub i32 8, %a ; <i32> [#uses=1] + %tmp3 = and i32 %tmp2, 7 ; <i32> [#uses=1] + ret i32 %tmp3 +} |

