mirror of
https://github.com/llvm/llvm-project.git
synced 2025-05-08 09:56:08 +00:00
30 lines
478 B
LLVM
30 lines
478 B
LLVM
; RUN: llvm-as < %s | llc -march=ppc32 | not grep srawi &&
|
|
; RUN: llvm-as < %s | 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
|
|
}
|