diff options
Diffstat (limited to 'llvm/test/CodeGen/PowerPC/div-2.ll')
-rw-r--r-- | llvm/test/CodeGen/PowerPC/div-2.ll | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/PowerPC/div-2.ll b/llvm/test/CodeGen/PowerPC/div-2.ll new file mode 100644 index 00000000000..d89361820ab --- /dev/null +++ b/llvm/test/CodeGen/PowerPC/div-2.ll @@ -0,0 +1,29 @@ +; RUN: llvm-upgrade < %s | llvm-as | llc -march=ppc32 | not grep srawi && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=ppc32 | grep blr + +int %test1(int %X) { + %Y = and int %X, 15 + %Z = div int %Y, 4 + ret int %Z +} + +int %test2(int %W) { + %X = and int %W, 15 + %Y = sub int 16, %X + %Z = div int %Y, 4 + ret int %Z +} + +int %test3(int %W) { + %X = and int %W, 15 + %Y = sub int 15, %X + %Z = div int %Y, 4 + ret int %Z +} + +int %test4(int %W) { + %X = and int %W, 2 + %Y = sub int 5, %X + %Z = div int %Y, 2 + ret int %Z +} |