AMDGPU/GCN: Bring processors in sync with AMDGPUUsage
authorKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Fri, 9 Feb 2018 07:02:28 +0000 (07:02 +0000)
committerKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Fri, 9 Feb 2018 07:02:28 +0000 (07:02 +0000)
- Remove gfx800
- Remove gfx804
- Remove gfx901
- Remove gfx903

Differential Revision: https://reviews.llvm.org/D40045

llvm-svn: 324714

clang/lib/Basic/Targets/AMDGPU.h
clang/test/Driver/amdgpu-mcpu.cl

index 38794ee..050676e 100644 (file)
@@ -69,51 +69,65 @@ class LLVM_LIBRARY_VISIBILITY AMDGPUTargetInfo final : public TargetInfo {
     AMDGPUTargetInfo::GPUKind Kind;
   };
 
-  static constexpr NameGPUKind R600Names[25] = {
+  static constexpr NameGPUKind R600Names[26] = {
       {{"r600"}, GK_R600},
-      {{"rv610"}, GK_R600},
-      {{"rv620"}, GK_R600},
       {{"rv630"}, GK_R600},
       {{"rv635"}, GK_R600},
+      {{"r630"}, GK_R600},
       {{"rs780"}, GK_R600},
       {{"rs880"}, GK_R600},
+      {{"rv610"}, GK_R600},
+      {{"rv620"}, GK_R600},
       {{"rv670"}, GK_R600_DOUBLE_OPS},
       {{"rv710"}, GK_R700},
       {{"rv730"}, GK_R700},
       {{"rv740"}, GK_R700_DOUBLE_OPS},
       {{"rv770"}, GK_R700_DOUBLE_OPS},
-      {{"palm"}, GK_EVERGREEN},
       {{"cedar"}, GK_EVERGREEN},
+      {{"palm"}, GK_EVERGREEN},
+      {{"cypress"}, GK_EVERGREEN_DOUBLE_OPS},
+      {{"hemlock"}, GK_EVERGREEN_DOUBLE_OPS},
+      {{"juniper"}, GK_EVERGREEN},
+      {{"redwood"}, GK_EVERGREEN},
       {{"sumo"}, GK_EVERGREEN},
       {{"sumo2"}, GK_EVERGREEN},
-      {{"redwood"}, GK_EVERGREEN},
-      {{"juniper"}, GK_EVERGREEN},
-      {{"hemlock"}, GK_EVERGREEN_DOUBLE_OPS},
-      {{"cypress"}, GK_EVERGREEN_DOUBLE_OPS},
       {{"barts"}, GK_NORTHERN_ISLANDS},
-      {{"turks"}, GK_NORTHERN_ISLANDS},
       {{"caicos"}, GK_NORTHERN_ISLANDS},
-      {{"cayman"}, GK_CAYMAN},
+      {{"turks"}, GK_NORTHERN_ISLANDS},
       {{"aruba"}, GK_CAYMAN},
+      {{"cayman"}, GK_CAYMAN},
   };
-  static constexpr NameGPUKind AMDGCNNames[33] = {
-      {{"gfx600"}, GK_GFX6},    {{"tahiti"}, GK_GFX6},
-      {{"gfx601"}, GK_GFX6},    {{"pitcairn"}, GK_GFX6},
-      {{"verde"}, GK_GFX6},     {{"oland"}, GK_GFX6},
-      {{"hainan"}, GK_GFX6},    {{"gfx700"}, GK_GFX7},
-      {{"bonaire"}, GK_GFX7},   {{"kaveri"}, GK_GFX7},
-      {{"gfx701"}, GK_GFX7},    {{"hawaii"}, GK_GFX7},
-      {{"gfx702"}, GK_GFX7},    {{"gfx703"}, GK_GFX7},
-      {{"kabini"}, GK_GFX7},    {{"mullins"}, GK_GFX7},
-      {{"gfx800"}, GK_GFX8},    {{"iceland"}, GK_GFX8},
-      {{"gfx801"}, GK_GFX8},    {{"carrizo"}, GK_GFX8},
-      {{"gfx802"}, GK_GFX8},    {{"tonga"}, GK_GFX8},
-      {{"gfx803"}, GK_GFX8},    {{"fiji"}, GK_GFX8},
-      {{"polaris10"}, GK_GFX8}, {{"polaris11"}, GK_GFX8},
-      {{"gfx804"}, GK_GFX8},    {{"gfx810"}, GK_GFX8},
-      {{"stoney"}, GK_GFX8},    {{"gfx900"}, GK_GFX9},
-      {{"gfx901"}, GK_GFX9},    {{"gfx902"}, GK_GFX9},
-      {{"gfx903"}, GK_GFX9},
+  static constexpr NameGPUKind AMDGCNNames[30] = {
+      {{"gfx600"}, GK_GFX6},
+      {{"tahiti"}, GK_GFX6},
+      {{"gfx601"}, GK_GFX6},
+      {{"hainan"}, GK_GFX6},
+      {{"oland"}, GK_GFX6},
+      {{"pitcairn"}, GK_GFX6},
+      {{"verde"}, GK_GFX6},
+      {{"gfx700"}, GK_GFX7},
+      {{"kaveri"}, GK_GFX7},
+      {{"gfx701"}, GK_GFX7},
+      {{"hawaii"}, GK_GFX7},
+      {{"gfx702"}, GK_GFX7},
+      {{"gfx703"}, GK_GFX7},
+      {{"kabini"}, GK_GFX7},
+      {{"mullins"}, GK_GFX7},
+      {{"gfx704"}, GK_GFX7},
+      {{"bonaire"}, GK_GFX7},
+      {{"gfx801"}, GK_GFX8},
+      {{"carrizo"}, GK_GFX8},
+      {{"gfx802"}, GK_GFX8},
+      {{"iceland"}, GK_GFX8},
+      {{"tonga"}, GK_GFX8},
+      {{"gfx803"}, GK_GFX8},
+      {{"fiji"}, GK_GFX8},
+      {{"polaris10"}, GK_GFX8},
+      {{"polaris11"}, GK_GFX8},
+      {{"gfx810"}, GK_GFX8},
+      {{"stoney"}, GK_GFX8},
+      {{"gfx900"}, GK_GFX9},
+      {{"gfx902"}, GK_GFX9},
   };
 
   bool hasFP64 : 1;
index 26137ac..df587ce 100644 (file)
-t// Check that -mcpu works for all supported GPUs
+// Check that -mcpu works for all supported GPUs.
 
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=r600 %s -o - 2>&1 | FileCheck --check-prefix=R600-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rv630 %s -o - 2>&1 | FileCheck --check-prefix=R600-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rv635 %s -o - 2>&1 | FileCheck --check-prefix=R600-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rv610 %s -o - 2>&1 | FileCheck --check-prefix=RS880-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rv620 %s -o - 2>&1 | FileCheck --check-prefix=RS880-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rs780 %s -o - 2>&1 | FileCheck --check-prefix=RS880-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rs880 %s -o - 2>&1 | FileCheck --check-prefix=RS880-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rv670 %s -o - 2>&1 | FileCheck --check-prefix=RV670-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rv710 %s -o - 2>&1 | FileCheck --check-prefix=RV710-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rv730 %s -o - 2>&1 | FileCheck --check-prefix=RV730-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rv740 %s -o - 2>&1 | FileCheck --check-prefix=RV770-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=rv770 %s -o - 2>&1 | FileCheck --check-prefix=RV770-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=palm %s -o - 2>&1 | FileCheck --check-prefix=CEDAR-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=cedar %s -o - 2>&1 | FileCheck --check-prefix=CEDAR-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=sumo %s -o - 2>&1 | FileCheck --check-prefix=SUMO-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=sumo2 %s -o - 2>&1 | FileCheck --check-prefix=SUMO-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=redwood %s -o - 2>&1 | FileCheck --check-prefix=REDWOOD-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=juniper %s -o - 2>&1 | FileCheck --check-prefix=JUNIPER-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=juniper %s -o - 2>&1 | FileCheck --check-prefix=JUNIPER-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=hemlock %s -o - 2>&1 | FileCheck --check-prefix=CYPRESS-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=cypress %s -o - 2>&1 | FileCheck --check-prefix=CYPRESS-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=barts %s -o - 2>&1 | FileCheck --check-prefix=BARTS-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=turks %s -o - 2>&1 | FileCheck --check-prefix=TURKS-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=caicos %s -o - 2>&1 | FileCheck --check-prefix=CAICOS-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=cayman %s -o - 2>&1 | FileCheck --check-prefix=CAYMAN-CHECK %s
-// RUN: %clang -### -target r600 -x cl -S -emit-llvm -mcpu=aruba %s -o - 2>&1 | FileCheck --check-prefix=CAYMAN-CHECK %s
+//
+// R600-based processors.
+//
 
-// R600-CHECK:  "-target-cpu" "r600"
-// RS880-CHECK: "-target-cpu" "rs880"
-// RV670-CHECK: "-target-cpu" "rv670"
-// RV710-CHECK: "-target-cpu" "rv710"
-// RV730-CHECK: "-target-cpu" "rv730"
-// RV770-CHECK: "-target-cpu" "rv770"
-// CEDAR-CHECK: "-target-cpu" "cedar"
-// REDWOOD-CHECK: "-target-cpu" "redwood"
-// SUMO-CHECK: "-target-cpu" "sumo"
-// JUNIPER-CHECK: "-target-cpu" "juniper"
-// CYPRESS-CHECK: "-target-cpu" "cypress"
-// BARTS-CHECK: "-target-cpu" "barts"
-// TURKS-CHECK: "-target-cpu" "turks"
-// CAICOS-CHECK: "-target-cpu" "caicos"
-// CAYMAN-CHECK: "-target-cpu" "cayman"
+// RUN: %clang -### -target r600 -mcpu=r600 %s 2>&1 | FileCheck --check-prefix=R600 %s
+// RUN: %clang -### -target r600 -mcpu=rv630 %s 2>&1 | FileCheck --check-prefix=R600 %s
+// RUN: %clang -### -target r600 -mcpu=rv635 %s 2>&1 | FileCheck --check-prefix=R600 %s
+// RUN: %clang -### -target r600 -mcpu=r630 %s 2>&1 | FileCheck --check-prefix=R630 %s
+// RUN: %clang -### -target r600 -mcpu=rs780 %s 2>&1 | FileCheck --check-prefix=RS880 %s
+// RUN: %clang -### -target r600 -mcpu=rs880 %s 2>&1 | FileCheck --check-prefix=RS880 %s
+// RUN: %clang -### -target r600 -mcpu=rv610 %s 2>&1 | FileCheck --check-prefix=RS880 %s
+// RUN: %clang -### -target r600 -mcpu=rv620 %s 2>&1 | FileCheck --check-prefix=RS880 %s
+// RUN: %clang -### -target r600 -mcpu=rv670 %s 2>&1 | FileCheck --check-prefix=RV670 %s
+// RUN: %clang -### -target r600 -mcpu=rv710 %s 2>&1 | FileCheck --check-prefix=RV710 %s
+// RUN: %clang -### -target r600 -mcpu=rv730 %s 2>&1 | FileCheck --check-prefix=RV730 %s
+// RUN: %clang -### -target r600 -mcpu=rv740 %s 2>&1 | FileCheck --check-prefix=RV770 %s
+// RUN: %clang -### -target r600 -mcpu=rv770 %s 2>&1 | FileCheck --check-prefix=RV770 %s
+// RUN: %clang -### -target r600 -mcpu=cedar %s 2>&1 | FileCheck --check-prefix=CEDAR %s
+// RUN: %clang -### -target r600 -mcpu=palm %s 2>&1 | FileCheck --check-prefix=CEDAR %s
+// RUN: %clang -### -target r600 -mcpu=cypress %s 2>&1 | FileCheck --check-prefix=CYPRESS %s
+// RUN: %clang -### -target r600 -mcpu=hemlock %s 2>&1 | FileCheck --check-prefix=CYPRESS %s
+// RUN: %clang -### -target r600 -mcpu=juniper %s 2>&1 | FileCheck --check-prefix=JUNIPER %s
+// RUN: %clang -### -target r600 -mcpu=redwood %s 2>&1 | FileCheck --check-prefix=REDWOOD %s
+// RUN: %clang -### -target r600 -mcpu=sumo %s 2>&1 | FileCheck --check-prefix=SUMO %s
+// RUN: %clang -### -target r600 -mcpu=sumo2 %s 2>&1 | FileCheck --check-prefix=SUMO %s
+// RUN: %clang -### -target r600 -mcpu=barts %s 2>&1 | FileCheck --check-prefix=BARTS %s
+// RUN: %clang -### -target r600 -mcpu=caicos %s 2>&1 | FileCheck --check-prefix=CAICOS %s
+// RUN: %clang -### -target r600 -mcpu=turks %s 2>&1 | FileCheck --check-prefix=TURKS %s
+// RUN: %clang -### -target r600 -mcpu=aruba %s 2>&1 | FileCheck --check-prefix=CAYMAN %s
+// RUN: %clang -### -target r600 -mcpu=cayman %s 2>&1 | FileCheck --check-prefix=CAYMAN %s
 
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx600 %s -o - 2>&1 | FileCheck --check-prefix=GFX600-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=tahiti %s -o - 2>&1 | FileCheck --check-prefix=TAHITI-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx601 %s -o - 2>&1 | FileCheck --check-prefix=GFX601-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=pitcairn %s -o - 2>&1 | FileCheck --check-prefix=PITCAIRN-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=verde %s -o - 2>&1 | FileCheck --check-prefix=VERDE-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=oland %s -o - 2>&1 | FileCheck --check-prefix=OLAND-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=hainan %s -o - 2>&1 | FileCheck --check-prefix=HAINAN-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx700 %s -o - 2>&1 | FileCheck --check-prefix=GFX700-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=bonaire %s -o - 2>&1 | FileCheck --check-prefix=BONAIRE-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=kaveri %s -o - 2>&1 | FileCheck --check-prefix=KAVERI-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx701 %s -o - 2>&1 | FileCheck --check-prefix=GFX701-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=hawaii %s -o - 2>&1 | FileCheck --check-prefix=HAWAII-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx702 %s -o - 2>&1 | FileCheck --check-prefix=GFX702-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx703 %s -o - 2>&1 | FileCheck --check-prefix=GFX703-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=kabini %s -o - 2>&1 | FileCheck --check-prefix=KABINI-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=mullins %s -o - 2>&1 | FileCheck --check-prefix=MULLINS-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx800 %s -o - 2>&1 | FileCheck --check-prefix=GFX800-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=iceland %s -o - 2>&1 | FileCheck --check-prefix=ICELAND-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx801 %s -o - 2>&1 | FileCheck --check-prefix=GFX801-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=carrizo %s -o - 2>&1 | FileCheck --check-prefix=CARRIZO-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx802 %s -o - 2>&1 | FileCheck --check-prefix=GFX802-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=tonga %s -o - 2>&1 | FileCheck --check-prefix=TONGA-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx803 %s -o - 2>&1 | FileCheck --check-prefix=GFX803-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=fiji %s -o - 2>&1 | FileCheck --check-prefix=FIJI-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=polaris10 %s -o - 2>&1 | FileCheck --check-prefix=POLARIS10-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=polaris11 %s -o - 2>&1 | FileCheck --check-prefix=POLARIS11-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx804 %s -o - 2>&1 | FileCheck --check-prefix=GFX804-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx810 %s -o - 2>&1 | FileCheck --check-prefix=GFX810-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=stoney %s -o - 2>&1 | FileCheck --check-prefix=STONEY-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx900 %s -o - 2>&1 | FileCheck --check-prefix=GFX900-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx901 %s -o - 2>&1 | FileCheck --check-prefix=GFX901-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx902 %s -o - 2>&1 | FileCheck --check-prefix=GFX902-CHECK %s
-// RUN: %clang -### -target amdgcn -x cl -S -emit-llvm -mcpu=gfx903 %s -o - 2>&1 | FileCheck --check-prefix=GFX903-CHECK %s
+// R600:    "-target-cpu" "r600"
+// R630:    "-target-cpu" "r630"
+// RS880:   "-target-cpu" "rs880"
+// RV670:   "-target-cpu" "rv670"
+// RV710:   "-target-cpu" "rv710"
+// RV730:   "-target-cpu" "rv730"
+// RV770:   "-target-cpu" "rv770"
+// CEDAR:   "-target-cpu" "cedar"
+// CYPRESS: "-target-cpu" "cypress"
+// JUNIPER: "-target-cpu" "juniper"
+// REDWOOD: "-target-cpu" "redwood"
+// SUMO:    "-target-cpu" "sumo"
+// BARTS:   "-target-cpu" "barts"
+// CAICOS:  "-target-cpu" "caicos"
+// TURKS:   "-target-cpu" "turks"
+// CAYMAN:  "-target-cpu" "cayman"
 
-// GFX600-CHECK: "-target-cpu" "gfx600"
-// TAHITI-CHECK: "-target-cpu" "tahiti"
-// GFX601-CHECK: "-target-cpu" "gfx601"
-// PITCAIRN-CHECK: "-target-cpu" "pitcairn"
-// VERDE-CHECK: "-target-cpu" "verde"
-// OLAND-CHECK: "-target-cpu" "oland"
-// HAINAN-CHECK: "-target-cpu" "hainan"
-// GFX700-CHECK: "-target-cpu" "gfx700"
-// BONAIRE-CHECK: "-target-cpu" "bonaire"
-// KAVERI-CHECK: "-target-cpu" "kaveri"
-// GFX701-CHECK: "-target-cpu" "gfx701"
-// HAWAII-CHECK: "-target-cpu" "hawaii"
-// GFX702-CHECK: "-target-cpu" "gfx702"
-// GFX703-CHECK: "-target-cpu" "gfx703"
-// KABINI-CHECK: "-target-cpu" "kabini"
-// MULLINS-CHECK: "-target-cpu" "mullins"
-// GFX800-CHECK: "-target-cpu" "gfx800"
-// ICELAND-CHECK: "-target-cpu" "iceland"
-// GFX801-CHECK: "-target-cpu" "gfx801"
-// CARRIZO-CHECK: "-target-cpu" "carrizo"
-// GFX802-CHECK: "-target-cpu" "gfx802"
-// TONGA-CHECK: "-target-cpu" "tonga"
-// GFX803-CHECK: "-target-cpu" "gfx803"
-// FIJI-CHECK: "-target-cpu" "fiji"
-// POLARIS10-CHECK: "-target-cpu" "polaris10"
-// POLARIS11-CHECK: "-target-cpu" "polaris11"
-// GFX804-CHECK: "-target-cpu" "gfx804"
-// GFX810-CHECK: "-target-cpu" "gfx810"
-// STONEY-CHECK: "-target-cpu" "stoney"
-// GFX900-CHECK: "-target-cpu" "gfx900"
-// GFX901-CHECK: "-target-cpu" "gfx901"
-// GFX902-CHECK: "-target-cpu" "gfx902"
-// GFX903-CHECK: "-target-cpu" "gfx903"
+//
+// AMDGCN-based processors.
+//
+
+// RUN: %clang -### -target amdgcn -mcpu=gfx600 %s 2>&1 | FileCheck --check-prefix=GFX600 %s
+// RUN: %clang -### -target amdgcn -mcpu=tahiti %s 2>&1 | FileCheck --check-prefix=TAHITI %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx601 %s 2>&1 | FileCheck --check-prefix=GFX601 %s
+// RUN: %clang -### -target amdgcn -mcpu=hainan %s 2>&1 | FileCheck --check-prefix=HAINAN %s
+// RUN: %clang -### -target amdgcn -mcpu=oland %s 2>&1 | FileCheck --check-prefix=OLAND %s
+// RUN: %clang -### -target amdgcn -mcpu=pitcairn %s 2>&1 | FileCheck --check-prefix=PITCAIRN %s
+// RUN: %clang -### -target amdgcn -mcpu=verde %s 2>&1 | FileCheck --check-prefix=VERDE %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx700 %s 2>&1 | FileCheck --check-prefix=GFX700 %s
+// RUN: %clang -### -target amdgcn -mcpu=kaveri %s 2>&1 | FileCheck --check-prefix=KAVERI %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx701 %s 2>&1 | FileCheck --check-prefix=GFX701 %s
+// RUN: %clang -### -target amdgcn -mcpu=hawaii %s 2>&1 | FileCheck --check-prefix=HAWAII %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx702 %s 2>&1 | FileCheck --check-prefix=GFX702 %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx703 %s 2>&1 | FileCheck --check-prefix=GFX703 %s
+// RUN: %clang -### -target amdgcn -mcpu=kabini %s 2>&1 | FileCheck --check-prefix=KABINI %s
+// RUN: %clang -### -target amdgcn -mcpu=mullins %s 2>&1 | FileCheck --check-prefix=MULLINS %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx704 %s 2>&1 | FileCheck --check-prefix=GFX704 %s
+// RUN: %clang -### -target amdgcn -mcpu=bonaire %s 2>&1 | FileCheck --check-prefix=BONAIRE %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx801 %s 2>&1 | FileCheck --check-prefix=GFX801 %s
+// RUN: %clang -### -target amdgcn -mcpu=carrizo %s 2>&1 | FileCheck --check-prefix=CARRIZO %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx802 %s 2>&1 | FileCheck --check-prefix=GFX802 %s
+// RUN: %clang -### -target amdgcn -mcpu=iceland %s 2>&1 | FileCheck --check-prefix=ICELAND %s
+// RUN: %clang -### -target amdgcn -mcpu=tonga %s 2>&1 | FileCheck --check-prefix=TONGA %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx803 %s 2>&1 | FileCheck --check-prefix=GFX803 %s
+// RUN: %clang -### -target amdgcn -mcpu=fiji %s 2>&1 | FileCheck --check-prefix=FIJI %s
+// RUN: %clang -### -target amdgcn -mcpu=polaris10 %s 2>&1 | FileCheck --check-prefix=POLARIS10 %s
+// RUN: %clang -### -target amdgcn -mcpu=polaris11 %s 2>&1 | FileCheck --check-prefix=POLARIS11 %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx810 %s 2>&1 | FileCheck --check-prefix=GFX810 %s
+// RUN: %clang -### -target amdgcn -mcpu=stoney %s 2>&1 | FileCheck --check-prefix=STONEY %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx900 %s 2>&1 | FileCheck --check-prefix=GFX900 %s
+// RUN: %clang -### -target amdgcn -mcpu=gfx902 %s 2>&1 | FileCheck --check-prefix=GFX902 %s
+
+// GFX600:    "-target-cpu" "gfx600"
+// TAHITI:    "-target-cpu" "tahiti"
+// GFX601:    "-target-cpu" "gfx601"
+// HAINAN:    "-target-cpu" "hainan"
+// OLAND:     "-target-cpu" "oland"
+// PITCAIRN:  "-target-cpu" "pitcairn"
+// VERDE:     "-target-cpu" "verde"
+// GFX700:    "-target-cpu" "gfx700"
+// KAVERI:    "-target-cpu" "kaveri"
+// GFX701:    "-target-cpu" "gfx701"
+// HAWAII:    "-target-cpu" "hawaii"
+// GFX702:    "-target-cpu" "gfx702"
+// GFX703:    "-target-cpu" "gfx703"
+// KABINI:    "-target-cpu" "kabini"
+// MULLINS:   "-target-cpu" "mullins"
+// GFX704:    "-target-cpu" "gfx704"
+// BONAIRE:   "-target-cpu" "bonaire"
+// GFX801:    "-target-cpu" "gfx801"
+// CARRIZO:   "-target-cpu" "carrizo"
+// GFX802:    "-target-cpu" "gfx802"
+// ICELAND:   "-target-cpu" "iceland"
+// TONGA:     "-target-cpu" "tonga"
+// GFX803:    "-target-cpu" "gfx803"
+// FIJI:      "-target-cpu" "fiji"
+// POLARIS10: "-target-cpu" "polaris10"
+// POLARIS11: "-target-cpu" "polaris11"
+// GFX810:    "-target-cpu" "gfx810"
+// STONEY:    "-target-cpu" "stoney"
+// GFX900:    "-target-cpu" "gfx900"
+// GFX902:    "-target-cpu" "gfx902"