1// REQUIRES: clang-driver
2// REQUIRES: x86-registered-target
3// REQUIRES: amdgpu-registered-target
4
5// RUN: not %clang -target amdgcn-amd-amdhsa \
6// RUN:   -mcpu=gfx908xnack -nostdlib \
7// RUN:   %s 2>&1 | FileCheck -check-prefix=NOPLUS %s
8
9// NOPLUS: error: Invalid target ID: gfx908xnack
10
11// RUN: not %clang -target amdgcn-amd-amdpal \
12// RUN:   -mcpu=gfx908:xnack+:xnack+ -nostdlib \
13// RUN:   %s 2>&1 | FileCheck -check-prefix=ORDER %s
14
15// ORDER: error: Invalid target ID: gfx908:xnack+:xnack+
16
17// RUN: not %clang -target amdgcn--mesa3d \
18// RUN:   -mcpu=gfx908:unknown+ -nostdlib \
19// RUN:   %s 2>&1 | FileCheck -check-prefix=UNK %s
20
21// UNK: error: Invalid target ID: gfx908:unknown+
22
23// RUN: not %clang -target amdgcn-amd-amdhsa \
24// RUN:   -mcpu=gfx908:sram-ecc+:unknown+ -nostdlib \
25// RUN:   %s 2>&1 | FileCheck -check-prefix=MIXED %s
26
27// MIXED: error: Invalid target ID: gfx908:sram-ecc+:unknown+
28
29// RUN: not %clang -target amdgcn-amd-amdhsa \
30// RUN:   -mcpu=gfx900:sram-ecc+ -nostdlib \
31// RUN:   %s 2>&1 | FileCheck -check-prefix=UNSUP %s
32
33// UNSUP: error: Invalid target ID: gfx900:sram-ecc+
34
35// RUN: not %clang -target amdgcn-amd-amdhsa \
36// RUN:   -mcpu=gfx900:xnack -nostdlib \
37// RUN:   %s 2>&1 | FileCheck -check-prefix=NOSIGN %s
38
39// NOSIGN: error: Invalid target ID: gfx900:xnack
40
41// RUN: not %clang -target amdgcn-amd-amdhsa \
42// RUN:   -mcpu=gfx900+xnack -nostdlib \
43// RUN:   %s 2>&1 | FileCheck -check-prefix=NOCOLON %s
44
45// NOCOLON: error: Invalid target ID: gfx900+xnack
46