• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1;XUN: llc < %s -march=r600 -mcpu=SI -verify-machineinstrs| FileCheck --check-prefix=SI --check-prefix=FUNC %s
2;RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck --check-prefix=EG --check-prefix=FUNC %s
3
4;FUNC-LABEL: @test_udiv
5;EG: RECIP_UINT
6;EG: LSHL {{.*}}, 1,
7;EG: BFE_UINT
8;EG: BFE_UINT
9;EG: BFE_UINT
10;EG: BFE_UINT
11;EG: BFE_UINT
12;EG: BFE_UINT
13;EG: BFE_UINT
14;EG: BFE_UINT
15;EG: BFE_UINT
16;EG: BFE_UINT
17;EG: BFE_UINT
18;EG: BFE_UINT
19;EG: BFE_UINT
20;EG: BFE_UINT
21;EG: BFE_UINT
22;EG: BFE_UINT
23;EG: BFE_UINT
24;EG: BFE_UINT
25;EG: BFE_UINT
26;EG: BFE_UINT
27;EG: BFE_UINT
28;EG: BFE_UINT
29;EG: BFE_UINT
30;EG: BFE_UINT
31;EG: BFE_UINT
32;EG: BFE_UINT
33;EG: BFE_UINT
34;EG: BFE_UINT
35;EG: BFE_UINT
36;EG: BFE_UINT
37;SI: S_ENDPGM
38define void @test_udiv(i64 addrspace(1)* %out, i64 %x, i64 %y) {
39  %result = udiv i64 %x, %y
40  store i64 %result, i64 addrspace(1)* %out
41  ret void
42}
43
44;FUNC-LABEL: @test_urem
45;EG: RECIP_UINT
46;EG: BFE_UINT
47;EG: BFE_UINT
48;EG: BFE_UINT
49;EG: BFE_UINT
50;EG: BFE_UINT
51;EG: BFE_UINT
52;EG: BFE_UINT
53;EG: BFE_UINT
54;EG: BFE_UINT
55;EG: BFE_UINT
56;EG: BFE_UINT
57;EG: BFE_UINT
58;EG: BFE_UINT
59;EG: BFE_UINT
60;EG: BFE_UINT
61;EG: BFE_UINT
62;EG: BFE_UINT
63;EG: BFE_UINT
64;EG: BFE_UINT
65;EG: BFE_UINT
66;EG: BFE_UINT
67;EG: BFE_UINT
68;EG: BFE_UINT
69;EG: BFE_UINT
70;EG: BFE_UINT
71;EG: BFE_UINT
72;EG: BFE_UINT
73;EG: BFE_UINT
74;EG: BFE_UINT
75;EG: BFE_UINT
76;EG: AND_INT {{.*}}, 1,
77;SI: S_ENDPGM
78define void @test_urem(i64 addrspace(1)* %out, i64 %x, i64 %y) {
79  %result = urem i64 %x, %y
80  store i64 %result, i64 addrspace(1)* %out
81  ret void
82}
83