Use static inline to do the right thing when built in C99 mode. Of course,
[llvm/stm8.git] / test / CodeGen / PowerPC / div-2.ll
blob2fc916ff005f08b1d687e8140dd3295f57f70397
1 ; RUN: llc < %s -march=ppc32 | not grep srawi 
2 ; RUN: llc < %s -march=ppc32 | grep blr
4 define i32 @test1(i32 %X) {
5         %Y = and i32 %X, 15             ; <i32> [#uses=1]
6         %Z = sdiv i32 %Y, 4             ; <i32> [#uses=1]
7         ret i32 %Z
10 define i32 @test2(i32 %W) {
11         %X = and i32 %W, 15             ; <i32> [#uses=1]
12         %Y = sub i32 16, %X             ; <i32> [#uses=1]
13         %Z = sdiv i32 %Y, 4             ; <i32> [#uses=1]
14         ret i32 %Z
17 define i32 @test3(i32 %W) {
18         %X = and i32 %W, 15             ; <i32> [#uses=1]
19         %Y = sub i32 15, %X             ; <i32> [#uses=1]
20         %Z = sdiv i32 %Y, 4             ; <i32> [#uses=1]
21         ret i32 %Z
24 define i32 @test4(i32 %W) {
25         %X = and i32 %W, 2              ; <i32> [#uses=1]
26         %Y = sub i32 5, %X              ; <i32> [#uses=1]
27         %Z = sdiv i32 %Y, 2             ; <i32> [#uses=1]
28         ret i32 %Z