Source: gcc-11
Version: 11.2.0-14
Severity: normal
Tags: patch
User: debian-sparc@lists.debian.org
Usertags: sparc64
X-Debbugs-Cc: debian-sparc@lists.debian.org

Hi!

GCC upstream is defaulting to the V8+ baseline now for 32-bit mode on sparc64 
[1].

As this change is not going to be backported according to the responsible 
author [2],
I would like to ask this change to be backported in the gcc-11 package in 
Debian.

I'm attaching both the patch itself as well as a Debian patch which includes 
both
the patch and updates debian/rules.patch.

Could you include it for the next upload?

Thanks,
Adrian

> [1] 
> https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=23987912ddb4207de0714d81237f93f613557d1f
> [2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104189

--
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaub...@debian.org
`. `'   Freie Universitaet Berlin - glaub...@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
diff -Nru old/gcc-11-11.2.0/debian/patches/sparc64-v8plus-default.diff 
new/gcc-11-11.2.0/debian/patches/sparc64-v8plus-default.diff
--- old/gcc-11-11.2.0/debian/patches/sparc64-v8plus-default.diff        
1970-01-01 01:00:00.000000000 +0100
+++ new/gcc-11-11.2.0/debian/patches/sparc64-v8plus-default.diff        
2022-01-31 10:54:27.448637243 +0100
@@ -0,0 +1,28 @@
+From 23987912ddb4207de0714d81237f93f613557d1f Mon Sep 17 00:00:00 2001
+From: Eric Botcazou <ebotca...@adacore.com>
+Date: Mon, 31 Jan 2022 09:21:48 +0100
+Subject: [PATCH] Use V8+ default in 32-bit mode on SPARC64/Linux
+
+This is what has been done for ages on SPARC/Solaris and makes it possible
+to use 64-bit atomic instructions even in 32-bit mode.
+
+gcc/
+       PR target/104189
+       * config/sparc/linux64.h (TARGET_DEFAULT): Add MASK_V8PLUS.
+
+--- a/src/gcc/config/sparc/linux64.h
++++ b/src/gcc/config/sparc/linux64.h
+@@ -35,8 +35,8 @@ along with GCC; see the file COPYING3.  If not see
+ #if defined(TARGET_64BIT_DEFAULT) && TARGET_CPU_DEFAULT >= TARGET_CPU_v9
+ #undef TARGET_DEFAULT
+ #define TARGET_DEFAULT \
+-  (MASK_V9 + MASK_PTR64 + MASK_64BIT + MASK_STACK_BIAS + \
+-   MASK_APP_REGS + MASK_FPU + MASK_LONG_DOUBLE_128)
++  (MASK_V9 + MASK_64BIT + MASK_PTR64 + MASK_STACK_BIAS + \
++   MASK_V8PLUS + MASK_APP_REGS + MASK_FPU + MASK_LONG_DOUBLE_128)
+ #endif
+ 
+ /* This must be v9a not just v9 because by default we enable
+-- 
+2.31.1
+
diff -Nru old/gcc-11-11.2.0/debian/rules.patch 
new/gcc-11-11.2.0/debian/rules.patch
--- old/gcc-11-11.2.0/debian/rules.patch        2022-01-17 13:42:16.000000000 
+0100
+++ new/gcc-11-11.2.0/debian/rules.patch        2022-01-31 10:54:47.009328741 
+0100
@@ -50,6 +50,7 @@
        gcc-auto-build \
        libitm-no-fortify-source \
        sparc64-biarch-long-double-128 \
+       sparc64-v8plus-default \
        pr66368 \
        pr67590 \
        libffi-pax \
>From 23987912ddb4207de0714d81237f93f613557d1f Mon Sep 17 00:00:00 2001
From: Eric Botcazou <ebotca...@adacore.com>
Date: Mon, 31 Jan 2022 09:21:48 +0100
Subject: [PATCH] Use V8+ default in 32-bit mode on SPARC64/Linux

This is what has been done for ages on SPARC/Solaris and makes it possible
to use 64-bit atomic instructions even in 32-bit mode.

gcc/
        PR target/104189
        * config/sparc/linux64.h (TARGET_DEFAULT): Add MASK_V8PLUS.

--- a/src/gcc/config/sparc/linux64.h
+++ b/src/gcc/config/sparc/linux64.h
@@ -35,8 +35,8 @@ along with GCC; see the file COPYING3.  If not see
 #if defined(TARGET_64BIT_DEFAULT) && TARGET_CPU_DEFAULT >= TARGET_CPU_v9
 #undef TARGET_DEFAULT
 #define TARGET_DEFAULT \
-  (MASK_V9 + MASK_PTR64 + MASK_64BIT + MASK_STACK_BIAS + \
-   MASK_APP_REGS + MASK_FPU + MASK_LONG_DOUBLE_128)
+  (MASK_V9 + MASK_64BIT + MASK_PTR64 + MASK_STACK_BIAS + \
+   MASK_V8PLUS + MASK_APP_REGS + MASK_FPU + MASK_LONG_DOUBLE_128)
 #endif
 
 /* This must be v9a not just v9 because by default we enable
-- 
2.31.1

Reply via email to