Hi!

On 2022-03-29T14:03:22+0200, Tom de Vries via Gcc-patches 
<gcc-patches@gcc.gnu.org> wrote:
> [...]
>
> gcc/testsuite/ChangeLog:
>
> 2022-03-29  Tom de Vries  <tdevr...@suse.de>
>
>       PR target/104714
>       * gcc.target/nvptx/march-map.c: New test.

Pushed to trunk branch commit ee6711ead30876daf2a8a66f8647cad95470fe79
"nvptx: Enhance '-march-map=[...]' test cases", see attached.


Grüße
 Thomas


>From ee6711ead30876daf2a8a66f8647cad95470fe79 Mon Sep 17 00:00:00 2001
From: Thomas Schwinge <tschwi...@baylibre.com>
Date: Sun, 10 Nov 2024 18:29:25 +0100
Subject: [PATCH] nvptx: Enhance '-march-map=[...]' test cases

This expands upon the one test case added in
commit de0ef04419e90eacf0d1ddb265552a1b08c18d4b "[nvptx] Add march-map".

	gcc/testsuite/
	* gcc.target/nvptx/march-map.c: Remove; expanded into...
	* gcc.target/nvptx/march-map=sm_50.c: ... this.
	* gcc.target/nvptx/march-map=sm_30.c: New.
	* gcc.target/nvptx/march-map=sm_32.c: Likewise.
	* gcc.target/nvptx/march-map=sm_35.c: Likewise.
	* gcc.target/nvptx/march-map=sm_37.c: Likewise.
	* gcc.target/nvptx/march-map=sm_52.c: Likewise.
	* gcc.target/nvptx/march-map=sm_53.c: Likewise.
	* gcc.target/nvptx/march-map=sm_60.c: Likewise.
	* gcc.target/nvptx/march-map=sm_61.c: Likewise.
	* gcc.target/nvptx/march-map=sm_62.c: Likewise.
	* gcc.target/nvptx/march-map=sm_70.c: Likewise.
	* gcc.target/nvptx/march-map=sm_72.c: Likewise.
	* gcc.target/nvptx/march-map=sm_75.c: Likewise.
	* gcc.target/nvptx/march-map=sm_80.c: Likewise.
	* gcc.target/nvptx/march-map=sm_86.c: Likewise.
	* gcc.target/nvptx/march-map=sm_87.c: Likewise.
	* gcc.target/nvptx/march-map=sm_89.c: Likewise.
	* gcc.target/nvptx/march-map=sm_90.c: Likewise.
	* gcc.target/nvptx/march-map=sm_90a.c: Likewise.
	* gcc.target/nvptx/main.c: Remove.
---
 gcc/testsuite/gcc.target/nvptx/main.c         |  7 -------
 gcc/testsuite/gcc.target/nvptx/march-map.c    |  5 -----
 .../gcc.target/nvptx/march-map=sm_30.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_32.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_35.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_37.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_50.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_52.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_53.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_60.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_61.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_62.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_70.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_72.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_75.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_80.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_86.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_87.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_89.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_90.c        | 19 +++++++++++++++++++
 .../gcc.target/nvptx/march-map=sm_90a.c       | 19 +++++++++++++++++++
 21 files changed, 361 insertions(+), 12 deletions(-)
 delete mode 100644 gcc/testsuite/gcc.target/nvptx/main.c
 delete mode 100644 gcc/testsuite/gcc.target/nvptx/march-map.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_30.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_32.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_35.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_37.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_50.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_52.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_53.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_60.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_61.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_62.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_70.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_72.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_75.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_80.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_86.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_87.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_89.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_90.c
 create mode 100644 gcc/testsuite/gcc.target/nvptx/march-map=sm_90a.c

diff --git a/gcc/testsuite/gcc.target/nvptx/main.c b/gcc/testsuite/gcc.target/nvptx/main.c
deleted file mode 100644
index 3af2b5758424..000000000000
--- a/gcc/testsuite/gcc.target/nvptx/main.c
+++ /dev/null
@@ -1,7 +0,0 @@
-/* { dg-do link } */
-
-int
-main (void)
-{
-  return 0;
-}
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map.c b/gcc/testsuite/gcc.target/nvptx/march-map.c
deleted file mode 100644
index 00838e55fc08..000000000000
--- a/gcc/testsuite/gcc.target/nvptx/march-map.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* { dg-options "-march-map=sm_50" } */
-
-#include "main.c"
-
-/* { dg-final { scan-assembler-times "\\.target\tsm_35" 1 } } */
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_30.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_30.c
new file mode 100644
index 000000000000..b69926e6debc
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_30.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_30 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_30$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 300
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_32.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_32.c
new file mode 100644
index 000000000000..dcf9e05233fa
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_32.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_32 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_30$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 300
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_35.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_35.c
new file mode 100644
index 000000000000..ce4669053ab5
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_35.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_35 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_35$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 350
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_37.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_37.c
new file mode 100644
index 000000000000..6e3928e55317
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_37.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_37 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_35$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 350
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_50.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_50.c
new file mode 100644
index 000000000000..2e843afb3b5e
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_50.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_50 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_35$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 350
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_52.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_52.c
new file mode 100644
index 000000000000..e6c6eac5231a
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_52.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_52 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_35$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 350
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_53.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_53.c
new file mode 100644
index 000000000000..3fc4e00bfd5f
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_53.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_53 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_53$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 530
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_60.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_60.c
new file mode 100644
index 000000000000..63e8355adf9e
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_60.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_60 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_53$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 530
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_61.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_61.c
new file mode 100644
index 000000000000..6e047e63f469
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_61.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_61 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_53$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 530
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_62.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_62.c
new file mode 100644
index 000000000000..1763835bfd5a
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_62.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_62 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_53$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 530
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_70.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_70.c
new file mode 100644
index 000000000000..7223bba664ad
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_70.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_70 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_70$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 700
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_72.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_72.c
new file mode 100644
index 000000000000..c5e2afd600d3
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_72.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_72 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_70$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 700
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_75.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_75.c
new file mode 100644
index 000000000000..3c036ab11f53
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_75.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_75 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	6\.3$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_75$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 6
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 3
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 750
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_80.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_80.c
new file mode 100644
index 000000000000..caa06796925e
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_80.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_80 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	7\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_80$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 7
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 800
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_86.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_86.c
new file mode 100644
index 000000000000..3636c899eefd
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_86.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_86 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	7\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_80$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 7
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 800
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_87.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_87.c
new file mode 100644
index 000000000000..c298e619c678
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_87.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_87 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	7\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_80$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 7
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 800
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_89.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_89.c
new file mode 100644
index 000000000000..24aabf6710fa
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_89.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_89 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	7\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_80$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 7
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 800
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_90.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_90.c
new file mode 100644
index 000000000000..77aea4e6c992
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_90.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_90 -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	7\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_80$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 7
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 800
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
diff --git a/gcc/testsuite/gcc.target/nvptx/march-map=sm_90a.c b/gcc/testsuite/gcc.target/nvptx/march-map=sm_90a.c
new file mode 100644
index 000000000000..b83fe654cf66
--- /dev/null
+++ b/gcc/testsuite/gcc.target/nvptx/march-map=sm_90a.c
@@ -0,0 +1,19 @@
+/* { dg-do assemble } */
+/* { dg-options {-march-map=sm_90a -mptx=_} } */
+/* { dg-additional-options -save-temps } */
+/* { dg-final { scan-assembler-times {(?n)^	\.version	7\.0$} 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^	\.target	sm_80$} 1 } } */
+
+#if __PTX_ISA_VERSION_MAJOR__ != 7
+#error wrong value for __PTX_ISA_VERSION_MAJOR__
+#endif
+
+#if __PTX_ISA_VERSION_MINOR__ != 0
+#error wrong value for __PTX_ISA_VERSION_MINOR__
+#endif
+
+#if __PTX_SM__ != 800
+#error wrong value for __PTX_SM__
+#endif
+
+int dummy;
-- 
2.34.1

Reply via email to