From e264f62ca09a8f65c87a46d562a4d0f9ec5d457e Mon Sep 17 00:00:00 2001 From: Shih-wei Liao Date: Wed, 10 Feb 2010 11:10:31 -0800 Subject: Check in LLVM r95781. --- test/CodeGen/PowerPC/div-2.ll | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 test/CodeGen/PowerPC/div-2.ll (limited to 'test/CodeGen/PowerPC/div-2.ll') diff --git a/test/CodeGen/PowerPC/div-2.ll b/test/CodeGen/PowerPC/div-2.ll new file mode 100644 index 0000000..2fc916f --- /dev/null +++ b/test/CodeGen/PowerPC/div-2.ll @@ -0,0 +1,30 @@ +; RUN: llc < %s -march=ppc32 | not grep srawi +; RUN: llc < %s -march=ppc32 | grep blr + +define i32 @test1(i32 %X) { + %Y = and i32 %X, 15 ; [#uses=1] + %Z = sdiv i32 %Y, 4 ; [#uses=1] + ret i32 %Z +} + +define i32 @test2(i32 %W) { + %X = and i32 %W, 15 ; [#uses=1] + %Y = sub i32 16, %X ; [#uses=1] + %Z = sdiv i32 %Y, 4 ; [#uses=1] + ret i32 %Z +} + +define i32 @test3(i32 %W) { + %X = and i32 %W, 15 ; [#uses=1] + %Y = sub i32 15, %X ; [#uses=1] + %Z = sdiv i32 %Y, 4 ; [#uses=1] + ret i32 %Z +} + +define i32 @test4(i32 %W) { + %X = and i32 %W, 2 ; [#uses=1] + %Y = sub i32 5, %X ; [#uses=1] + %Z = sdiv i32 %Y, 2 ; [#uses=1] + ret i32 %Z +} + -- cgit v1.1