https://gcc.gnu.org/g:5cb8d99fb7b92bc01875c70ea15cd9379ad27a83

commit 5cb8d99fb7b92bc01875c70ea15cd9379ad27a83
Author: Thomas Schwinge <tschwi...@baylibre.com>
Date:   Mon Nov 11 13:20:46 2024 +0100

    nvptx: Switch default from '-march=sm_30' to '-march=sm_52'
    
    In preparation of GCC/nvptx code changes that require sm_52 features, this
    commit raises nvptx code generation from sm_30 "Kepler" to sm_52 "Maxwell".
    The latter has been supported as of CUDA 6.5 (2014-08), and is thus 
supported
    by most Nvidia GPUs of the last decade, approximately.  (This commit doesn't
    change the use of PTX ISA 6.0, which already requires CUDA 9.0 anyway.)
    
    To continue building sm_30 multilib variants (for use via building/linking 
with
    '-march=sm_30'), specify '--with-multilib-list=default,sm_30', for example. 
 Or,
    to continue defaulting to sm_30 multilib variants, specify 
'--with-arch=sm_30'
    (plus '--without-multilib-list', if applicable).  See the documentation,
    <https://gcc.gnu.org/install/specific.html#nvptx-x-none>.
    
    (Note that after a long deprecation time, eventually the
    sm_3x "Kepler architecture support is removed from CUDA 12.0", 2022-12.)
    
            gcc/
            * config.gcc [nvptx-*]: Switch default from '-march=sm_30' to
            '-march=sm_52'.
            * doc/install.texi (Nvidia PTX Options): Update.
    
    (cherry picked from commit d4e1f7cfdb8375c2a0076d4227a220b5e2682834)

Diff:
---
 gcc/ChangeLog.omp    | 7 +++++++
 gcc/config.gcc       | 4 ++--
 gcc/doc/install.texi | 4 ++--
 3 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/gcc/ChangeLog.omp b/gcc/ChangeLog.omp
index 913daacc67b4..92982fb7fd82 100644
--- a/gcc/ChangeLog.omp
+++ b/gcc/ChangeLog.omp
@@ -3,6 +3,13 @@
        Backported from trunk:
        2024-12-09  Thomas Schwinge  <tschwi...@baylibre.com>
 
+       * config.gcc [nvptx-*]: Switch default from '-march=sm_30' to
+       '-march=sm_52'.
+       * doc/install.texi (Nvidia PTX Options): Update.
+
+       Backported from trunk:
+       2024-12-09  Thomas Schwinge  <tschwi...@baylibre.com>
+
        * config/gcn/gcn.cc (gcn_vec_constant): Fix 'real_from_integer'
        usage.
 
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 29c04c01fb33..f6846df109c7 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -4105,7 +4105,7 @@ if test x$with_arch = x ; then
       with_arch=mips2
       ;;
     nvptx-*)
-      with_arch=sm_30
+      with_arch=sm_52
       ;;
   esac
 
@@ -5562,7 +5562,7 @@ case "${target}" in
        nvptx-*)
                supported_defaults=arch
 
-               nvptx_multilibs_default=sm_30
+               nvptx_multilibs_default=sm_52
 
                case "x${with_multilib_list}" in
                x | xno)
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 4b755deffa0c..78a80456a34c 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -1397,7 +1397,7 @@ is specified, then no additional multilibs are built.
 Otherwise, @var{list} is a comma separated list specifying which
 multilibs to build.
 List items are either @samp{sm_SM}, or @samp{default}, which is a
-placeholder specifying a default set of multilibs: @samp{sm_30}.
+placeholder specifying a default set of multilibs: @samp{sm_52}.
 Any duplicates are filtered out.
 If @option{--with-multilib-list} is not specified, then
 @option{--with-multilib-list=default} is assumed.
@@ -4735,7 +4735,7 @@ Use the @option{--disable-sjlj-exceptions} and
 The @option{--with-arch} option may be specified to override the
 default value for the @option{-march} option, and to also build
 corresponding target libraries.
-The default is @option{--with-arch=sm_30}.
+The default is @option{--with-arch=sm_52}.
 
 For example, if @option{--with-arch=sm_70} is specified,
 code generation defaults to @option{-march=sm_70} and

Reply via email to