[nvptx] Add march alias for misa
authorTom de Vries <tdevries@suse.de>
Tue, 29 Mar 2022 08:31:51 +0000 (10:31 +0200)
committerTom de Vries <tdevries@suse.de>
Tue, 29 Mar 2022 10:55:35 +0000 (12:55 +0200)
The target option misa has the following description:
...
$ gcc --target-help 2>&1 | grep misa
  -misa=                      Specify the PTX ISA target architecture to use.
...

The name misa is somewhat poorly chosen.  It suggests that for a use
-misa=sm_30, sm_30 is the name of a specific Instruction Set Architecture.
Instead, sm_30 is the name of a specific target architecture in the generic
PTX Instruction Set Architecture.

Futhermore, there's mptx, which also has ISA in the description:
...
  -mptx=                      Specify the PTX ISA version to use.
...

Add the more intuitive alias march for misa:
...
$ gcc --target-help 2>&1 | grep march
  -march=                     Alias:  Same as -misa=.
...

Tested on nvptx.

gcc/ChangeLog:

2022-03-29  Tom de Vries  <tdevries@suse.de>

* config/nvptx/nvptx.opt (march): Add alias of misa.

gcc/testsuite/ChangeLog:

2022-03-29  Tom de Vries  <tdevries@suse.de>

* gcc.target/nvptx/main.c: New test.
* gcc.target/nvptx/march.c: New test.

gcc/config/nvptx/nvptx.opt
gcc/testsuite/gcc.target/nvptx/main.c [new file with mode: 0644]
gcc/testsuite/gcc.target/nvptx/march.c [new file with mode: 0644]

index 1f684ed..b5d0170 100644 (file)
@@ -56,6 +56,10 @@ misa=
 Target RejectNegative ToLower Joined Enum(ptx_isa) Var(ptx_isa_option) Init(PTX_ISA_SM30)
 Specify the PTX ISA target architecture to use.
 
+march=
+Target RejectNegative Joined Alias(misa=)
+Alias:
+
 Enum
 Name(ptx_version) Type(int)
 Known PTX ISA versions (for use with the -mptx= option):
diff --git a/gcc/testsuite/gcc.target/nvptx/main.c b/gcc/testsuite/gcc.target/nvptx/main.c
new file mode 100644 (file)
index 0000000..3af2b57
--- /dev/null
@@ -0,0 +1,7 @@
+/* { dg-do link } */
+
+int
+main (void)
+{
+  return 0;
+}
diff --git a/gcc/testsuite/gcc.target/nvptx/march.c b/gcc/testsuite/gcc.target/nvptx/march.c
new file mode 100644 (file)
index 0000000..ec91f21
--- /dev/null
@@ -0,0 +1,5 @@
+/* { dg-options "-march=sm_30"} */
+
+#include "main.c"
+
+/* { dg-final { scan-assembler-times "\\.target\tsm_30" 1 } } */