https://gcc.gnu.org/g:f2dd8a43beaa913bb7ac7b795b7264b26ea55b8b

commit f2dd8a43beaa913bb7ac7b795b7264b26ea55b8b
Author: Thomas Schwinge <tschwi...@baylibre.com>
Date:   Sun Nov 10 18:29:25 2024 +0100

    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.
    
    (cherry picked from commit ee6711ead30876daf2a8a66f8647cad95470fe79)

Diff:
---
 gcc/testsuite/ChangeLog.omp                       | 25 +++++++++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/main.c             |  7 -------
 gcc/testsuite/gcc.target/nvptx/march-map.c        |  5 -----
 gcc/testsuite/gcc.target/nvptx/march-map=sm_30.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_32.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_35.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_37.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_50.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_52.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_53.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_60.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_61.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_62.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_70.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_72.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_75.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_80.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_86.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_87.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_89.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_90.c  | 19 +++++++++++++++++
 gcc/testsuite/gcc.target/nvptx/march-map=sm_90a.c | 19 +++++++++++++++++
 22 files changed, 386 insertions(+), 12 deletions(-)

diff --git a/gcc/testsuite/ChangeLog.omp b/gcc/testsuite/ChangeLog.omp
index c626ff753570..26db6e3dd097 100644
--- a/gcc/testsuite/ChangeLog.omp
+++ b/gcc/testsuite/ChangeLog.omp
@@ -3,6 +3,31 @@
        Backported from trunk:
        2024-12-06  Thomas Schwinge  <tschwi...@baylibre.com>
 
+       * 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.
+
+       Backported from trunk:
+       2024-12-06  Thomas Schwinge  <tschwi...@baylibre.com>
+
        * gcc.target/nvptx/sm30.c: Remove; expanded into...
        * gcc.target/nvptx/march=sm_30.c: ... this.
        * gcc.target/nvptx/sm35.c: Remove; expanded into...
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;

Reply via email to