blob: db0aee03ec095e68265a9f0d89fe12696bde83a1 [file] [log] [blame]
Matt Arsenault07f65712016-07-26 16:45:50 +00001; RUN: llc -march=amdgcn -mcpu=kaveri -verify-machineinstrs < %s | FileCheck -check-prefix=NOXNACK -check-prefix=CI -check-prefix=GCN %s
2; RUN: llc -march=amdgcn -mcpu=fiji -verify-machineinstrs < %s | FileCheck -check-prefix=NOXNACK -check-prefix=VI -check-prefix=GCN %s
3; RUN: llc -march=amdgcn -mcpu=carrizo -mattr=+xnack -verify-machineinstrs < %s | FileCheck -check-prefix=XNACK -check-prefix=VI -check-prefix=GCN %s
4
5; RUN: llc -march=amdgcn -mtriple=amdgcn--amdhsa -mcpu=kaveri -verify-machineinstrs < %s | FileCheck -check-prefix=CI -check-prefix=NOXNACK -check-prefix=HSA-NOXNACK -check-prefix=HSA -check-prefix=GCN %s
6; RUN: llc -march=amdgcn -mtriple=amdgcn--amdhsa -mcpu=carrizo -mattr=-xnack -verify-machineinstrs < %s | FileCheck -check-prefix=VI -check-prefix=NOXNACK -check-prefix=HSA-NOXNACK -check-prefix=HSA -check-prefix=GCN %s
7; RUN: llc -march=amdgcn -mtriple=amdgcn--amdhsa -mcpu=carrizo -mattr=+xnack -verify-machineinstrs < %s | FileCheck -check-prefix=VI -check-prefix=XNACK -check-prefix=HSA-XNACK -check-prefix=HSA -check-prefix=GCN %s
Tom Stellardcaaa3aa2015-12-17 17:05:09 +00008
9; GCN-LABEL: {{^}}no_vcc_no_flat:
Matt Arsenault07f65712016-07-26 16:45:50 +000010; HSA-NOXNACK: is_xnack_enabled = 0
11; HSA-XNACK: is_xnack_enabled = 1
12
13; NOXNACK: ; NumSgprs: 8
Nicolai Haehnle5b504972016-01-04 23:35:53 +000014; XNACK: ; NumSgprs: 12
Tom Stellardcaaa3aa2015-12-17 17:05:09 +000015define void @no_vcc_no_flat() {
16entry:
17 call void asm sideeffect "", "~{SGPR7}"()
18 ret void
19}
20
21; GCN-LABEL: {{^}}vcc_no_flat:
Matt Arsenault07f65712016-07-26 16:45:50 +000022; HSA-NOXNACK: is_xnack_enabled = 0
23; HSA-XNACK: is_xnack_enabled = 1
24
25; NOXNACK: ; NumSgprs: 10
Nicolai Haehnle5b504972016-01-04 23:35:53 +000026; XNACK: ; NumSgprs: 12
Tom Stellardcaaa3aa2015-12-17 17:05:09 +000027define void @vcc_no_flat() {
28entry:
29 call void asm sideeffect "", "~{SGPR7},~{VCC}"()
30 ret void
31}
32
33; GCN-LABEL: {{^}}no_vcc_flat:
Matt Arsenault07f65712016-07-26 16:45:50 +000034; HSA-NOXNACK: is_xnack_enabled = 0
35; HSA-XNACK: is_xnack_enabled = 1
36
Tom Stellardcaaa3aa2015-12-17 17:05:09 +000037; CI: ; NumSgprs: 12
Nicolai Haehnle3c05d6d2016-01-07 17:10:20 +000038; VI: ; NumSgprs: 14
Tom Stellardcaaa3aa2015-12-17 17:05:09 +000039define void @no_vcc_flat() {
40entry:
41 call void asm sideeffect "", "~{SGPR7},~{FLAT_SCR}"()
42 ret void
43}
44
45; GCN-LABEL: {{^}}vcc_flat:
Matt Arsenault07f65712016-07-26 16:45:50 +000046; HSA-NOXNACK: is_xnack_enabled = 0
47; HSA-XNACK: is_xnack_enabled = 1
48
Tom Stellardcaaa3aa2015-12-17 17:05:09 +000049; CI: ; NumSgprs: 12
Nicolai Haehnle3c05d6d2016-01-07 17:10:20 +000050; VI: ; NumSgprs: 14
Tom Stellardcaaa3aa2015-12-17 17:05:09 +000051define void @vcc_flat() {
52entry:
53 call void asm sideeffect "", "~{SGPR7},~{VCC},~{FLAT_SCR}"()
54 ret void
55}