nvptx: Add -misa=sm_70

Add -misa=sm_70, and use it to specify the misa value in test-case
gcc.target/nvptx/atomic-store-2.c.

Tested on nvptx.

gcc/ChangeLog:

	* config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Handle SM70.
	* config/nvptx/nvptx.cc (first_ptx_version_supporting_sm):
	Likewise.
	* config/nvptx/nvptx.opt (misa): Add sm_70 alias PTX_ISA_SM70.

gcc/testsuite/ChangeLog:

2022-02-22  Tom de Vries  <tdevries@suse.de>

	* gcc.target/nvptx/atomic-store-2.c: Use -misa=sm_70.
	* gcc.target/nvptx/uniform-simt-3.c: Same.

Co-Authored-By: Tom de Vries <tdevries@suse.de>
This commit is contained in:
Tobias Burnus 2022-02-20 00:25:33 +01:00 committed by Tom de Vries
parent 5e1b17f038
commit bd73d8dd31
5 changed files with 9 additions and 2 deletions

View file

@ -43,6 +43,8 @@ nvptx_cpu_cpp_builtins (void)
cpp_define (parse_in, "__PTX_SM__=800");
else if (TARGET_SM75)
cpp_define (parse_in, "__PTX_SM__=750");
else if (TARGET_SM70)
cpp_define (parse_in, "__PTX_SM__=700");
else if (TARGET_SM53)
cpp_define (parse_in, "__PTX_SM__=530");
else if (TARGET_SM35)

View file

@ -217,6 +217,8 @@ first_ptx_version_supporting_sm (enum ptx_isa sm)
return PTX_VERSION_3_1;
case PTX_ISA_SM53:
return PTX_VERSION_4_2;
case PTX_ISA_SM70:
return PTX_VERSION_6_0;
case PTX_ISA_SM75:
return PTX_VERSION_6_3;
case PTX_ISA_SM80:

View file

@ -64,6 +64,9 @@ Enum(ptx_isa) String(sm_35) Value(PTX_ISA_SM35)
EnumValue
Enum(ptx_isa) String(sm_53) Value(PTX_ISA_SM53)
EnumValue
Enum(ptx_isa) String(sm_70) Value(PTX_ISA_SM70)
EnumValue
Enum(ptx_isa) String(sm_75) Value(PTX_ISA_SM75)

View file

@ -2,7 +2,7 @@
shared state space. */
/* { dg-do compile } */
/* { dg-options "-misa=sm_75" } */
/* { dg-options "-misa=sm_70" } */
enum memmodel
{

View file

@ -1,4 +1,4 @@
/* { dg-do compile } */
/* { dg-options "-O2 -muniform-simt -misa=sm_75" } */
/* { dg-options "-O2 -muniform-simt -misa=sm_70" } */
#include "atomic-store-2.c"