• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# RUN: llc -march=amdgcn -mcpu=gfx900 -verify-machineinstrs -start-before si-shrink-instructions -stop-before si-insert-skips -o - %s | FileCheck -check-prefix=GCN %s
2
3# GCN-LABEL: name: subbrev{{$}}
4# GCN:       V_SUBBREV_U32_e32 0, undef $vgpr0, implicit-def $vcc, implicit killed $vcc, implicit $exec
5
6---
7name:            subbrev
8tracksRegLiveness: true
9registers:
10  - { id: 0, class: vgpr_32 }
11  - { id: 1, class: vgpr_32 }
12  - { id: 2, class: vgpr_32 }
13  - { id: 3, class: sreg_64_xexec }
14  - { id: 4, class: vgpr_32 }
15  - { id: 5, class: sreg_64_xexec }
16body:             |
17  bb.0:
18
19    %0 = IMPLICIT_DEF
20    %1 = IMPLICIT_DEF
21    %2 = IMPLICIT_DEF
22    %3 = V_CMP_GT_U32_e64 %0, %1, implicit $exec
23    %4, %5 = V_SUBBREV_U32_e64 0, %0, %3, 0, implicit $exec
24    GLOBAL_STORE_DWORD undef $vgpr0_vgpr1, %4, 0, 0, 0, 0, implicit $exec
25
26...
27
28# GCN-LABEL: name: subb{{$}}
29# GCN:       V_SUBBREV_U32_e32 0, undef $vgpr0, implicit-def $vcc, implicit killed $vcc, implicit $exec
30
31---
32name:            subb
33tracksRegLiveness: true
34registers:
35  - { id: 0, class: vgpr_32 }
36  - { id: 1, class: vgpr_32 }
37  - { id: 2, class: vgpr_32 }
38  - { id: 3, class: sreg_64_xexec }
39  - { id: 4, class: vgpr_32 }
40  - { id: 5, class: sreg_64_xexec }
41body:             |
42  bb.0:
43
44    %0 = IMPLICIT_DEF
45    %1 = IMPLICIT_DEF
46    %2 = IMPLICIT_DEF
47    %3 = V_CMP_GT_U32_e64 %0, %1, implicit $exec
48    %4, %5 = V_SUBB_U32_e64 %0, 0, %3, 0, implicit $exec
49    GLOBAL_STORE_DWORD undef $vgpr0_vgpr1, %4, 0, 0, 0, 0, implicit $exec
50
51...
52
53# GCN-LABEL: name: addc{{$}}
54# GCN:       V_ADDC_U32_e32 0, undef $vgpr0, implicit-def $vcc, implicit killed $vcc, implicit $exec
55
56---
57name:            addc
58tracksRegLiveness: true
59registers:
60  - { id: 0, class: vgpr_32 }
61  - { id: 1, class: vgpr_32 }
62  - { id: 2, class: vgpr_32 }
63  - { id: 3, class: sreg_64_xexec }
64  - { id: 4, class: vgpr_32 }
65  - { id: 5, class: sreg_64_xexec }
66body:             |
67  bb.0:
68
69    %0 = IMPLICIT_DEF
70    %1 = IMPLICIT_DEF
71    %2 = IMPLICIT_DEF
72    %3 = V_CMP_GT_U32_e64 %0, %1, implicit $exec
73    %4, %5 = V_ADDC_U32_e64 0, %0, %3, 0, implicit $exec
74    GLOBAL_STORE_DWORD undef $vgpr0_vgpr1, %4, 0, 0, 0, 0, implicit $exec
75
76...
77
78# GCN-LABEL: name: addc2{{$}}
79# GCN:       V_ADDC_U32_e32 0, undef $vgpr0, implicit-def $vcc, implicit killed $vcc, implicit $exec
80
81---
82name:            addc2
83tracksRegLiveness: true
84registers:
85  - { id: 0, class: vgpr_32 }
86  - { id: 1, class: vgpr_32 }
87  - { id: 2, class: vgpr_32 }
88  - { id: 3, class: sreg_64_xexec }
89  - { id: 4, class: vgpr_32 }
90  - { id: 5, class: sreg_64_xexec }
91body:             |
92  bb.0:
93
94    %0 = IMPLICIT_DEF
95    %1 = IMPLICIT_DEF
96    %2 = IMPLICIT_DEF
97    %3 = V_CMP_GT_U32_e64 %0, %1, implicit $exec
98    %4, %5 = V_ADDC_U32_e64 %0, 0, %3, 0, implicit $exec
99    GLOBAL_STORE_DWORD undef $vgpr0_vgpr1, %4, 0, 0, 0, 0, implicit $exec
100
101...
102