• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 < %s | FileCheck %s
2; RUN: llc -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr8 < %s | FileCheck %s
3; RUN: llc -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr8 < %s | FileCheck %s
4
5; Function Attrs: nounwind
6define signext i32 @test1() #0 {
7entry:
8  %0 = call i32 @llvm.ppc.divwe(i32 32, i32 16)
9  ret i32 %0
10; CHECK: divwe 3, 4, 3
11}
12
13; Function Attrs: nounwind readnone
14declare i32 @llvm.ppc.divwe(i32, i32) #1
15
16; Function Attrs: nounwind
17define signext i32 @test2() #0 {
18entry:
19  %0 = call i32 @llvm.ppc.divweu(i32 32, i32 16)
20  ret i32 %0
21; CHECK: divweu 3, 4, 3
22}
23
24; Function Attrs: nounwind readnone
25declare i32 @llvm.ppc.divweu(i32, i32) #1
26
27; Function Attrs: nounwind
28define i64 @test3() #0 {
29entry:
30  %0 = call i64 @llvm.ppc.divde(i64 32, i64 16)
31  ret i64 %0
32; CHECK: divde 3, 4, 3
33}
34
35; Function Attrs: nounwind readnone
36declare i64 @llvm.ppc.divde(i64, i64) #1
37
38; Function Attrs: nounwind
39define i64 @test4() #0 {
40entry:
41  %0 = call i64 @llvm.ppc.divdeu(i64 32, i64 16)
42  ret i64 %0
43; CHECK: divdeu 3, 4, 3
44}
45
46; Function Attrs: nounwind readnone
47declare i64 @llvm.ppc.divdeu(i64, i64) #1
48
49attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
50attributes #1 = { nounwind readnone }
51
52!llvm.ident = !{!0}
53
54!0 = !{!"clang version 3.7.0 (trunk 231831) (llvm/trunk 231828:231843M)"}
55