public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Jakub Jelinek <jakub@redhat.com>
To: git-commits@fedoraproject.org
Subject: [rpms/gcc] rhel-f41-base: 10.2.1-4
Date: Mon, 29 Jun 2026 12:28:53 GMT [thread overview]
Message-ID: <178273613323.1.10118416873723467558.rpms-gcc-d10315732bb8@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/gcc
Branch : rhel-f41-base
Commit : d10315732bb882596aee583fe93784c4557a1a2f
Author : Jakub Jelinek <jakub@redhat.com>
Date : 2020-09-16T11:42:59+02:00
Stats : +403/-4 in 8 file(s)
URL : https://src.fedoraproject.org/rpms/gcc/c/d10315732bb882596aee583fe93784c4557a1a2f?branch=rhel-f41-base
Log:
10.2.1-4
---
diff --git a/.gitignore b/.gitignore
index 55534ee..6fa7600 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,3 +16,4 @@
/gcc-10.2.1-20200723.tar.xz
/gcc-10.2.1-20200804.tar.xz
/gcc-10.2.1-20200826.tar.xz
+/gcc-10.2.1-20200916.tar.xz
diff --git a/gcc.spec b/gcc.spec
index 00598ca..22001c7 100644
--- a/gcc.spec
+++ b/gcc.spec
@@ -1,10 +1,10 @@
-%global DATE 20200826
-%global gitrev c59c8927f43fb78d6a72a0ff93a47b36e43282d5
+%global DATE 20200916
+%global gitrev c65817433fde22de2a18a00be00c2c3d83228453
%global gcc_version 10.2.1
%global gcc_major 10
# Note, gcc_release must be integer, if you want to add suffixes to
# %%{release}, append them after %%{gcc_release} on Release: line.
-%global gcc_release 3
+%global gcc_release 4
%global nvptx_tools_gitrev 5f6f343a302d620b0868edab376c00b15741e39e
%global newlib_cygwin_gitrev 50e2a63b04bdd018484605fbb954fd1bd5147fa0
%global _unpackaged_files_terminate_build 0
@@ -271,6 +271,11 @@ Patch11: gcc10-d-shared-libphobos.patch
Patch12: gcc10-pr96383.patch
Patch13: gcc10-pr96385.patch
Patch14: gcc10-pr96690.patch
+Patch15: gcc10-pr96939.patch
+Patch16: gcc10-pr96939-2.patch
+Patch17: gcc10-pr96939-3.patch
+Patch18: gcc10-pr97032.patch
+Patch19: gcc10-pr97060.patch
# On ARM EABI systems, we do want -gnueabi to be part of the
# target triple.
@@ -785,6 +790,12 @@ to NVidia PTX capable devices if available.
%patch12 -p0 -b .pr96383~
%patch13 -p0 -b .pr96385~
%patch14 -p0 -b .pr96690~
+%patch15 -p0 -b .pr96939~
+%patch16 -p0 -b .pr96939-2~
+%patch17 -p0 -b .pr96939-3~
+%patch18 -p0 -b .pr97032~
+%patch19 -p0 -b .pr97060~
+find gcc/testsuite -name \*.pr96939~ | xargs rm -f
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
@@ -3051,6 +3062,25 @@ end
%endif
%changelog
+* Wed Sep 16 2020 Jakub Jelinek <jakub@redhat.com> 10.2.1-4
+- update from releases/gcc-10 branch
+ - PRs bootstrap/96203, c++/95164, c++/96862, c++/96901, d/96157, d/96924,
+ debug/93865, debug/94235, debug/96729, fortran/94690, fortran/95109,
+ fortran/95398, fortran/95882, fortran/96859, libstdc++/71960,
+ libstdc++/92978, libstdc++/96766, libstdc++/96851, lto/94311,
+ middle-end/87256, middle-end/96369, target/85830, target/94538,
+ target/96357, target/96551, target/96574, target/96744, target/96808,
+ target/97028, tree-optimization/88240, tree-optimization/96349,
+ tree-optimization/96370, tree-optimization/96514,
+ tree-optimization/96522, tree-optimization/96579,
+ tree-optimization/96597, tree-optimization/96820,
+ tree-optimization/96854, tree-optimization/97043
+- fix up ARM target attribute/pragma handling (#1875814, PR target/96939)
+- don't ICE on sp clobbers with -mincoming-stack-boundary=2 on ia32
+ (#1862029, PR target/97032)
+- emit DW_AT_declaration on DIEs for external FUNCTION_DECLs without body
+ (PR debug/97060)
+
* Wed Aug 26 2020 Jakub Jelinek <jakub@redhat.com> 10.2.1-3
- update from releases/gcc-10 branch
- PRs c++/95428, c++/96082, c++/96106, c++/96164, c++/96199, c++/96497,
diff --git a/gcc10-pr96939-2.patch b/gcc10-pr96939-2.patch
new file mode 100644
index 0000000..e9e406f
--- /dev/null
+++ b/gcc10-pr96939-2.patch
@@ -0,0 +1,51 @@
+2020-09-09 Jakub Jelinek <jakub@redhat.com>
+
+ * config/arm/arm.c (arm_override_options_after_change_1): Add opts_set
+ argument, test opts_set->x_str_align_functions rather than
+ opts->x_str_align_functions.
+ (arm_override_options_after_change, arm_option_override_internal,
+ arm_set_current_function): Adjust callers.
+
+--- gcc/config/arm/arm.c.jj 2020-09-09 09:19:42.911419411 +0200
++++ gcc/config/arm/arm.c 2020-09-09 09:28:02.392897384 +0200
+@@ -3024,10 +3024,11 @@ static GTY(()) bool thumb_flipper;
+ static GTY(()) tree init_optimize;
+
+ static void
+-arm_override_options_after_change_1 (struct gcc_options *opts)
++arm_override_options_after_change_1 (struct gcc_options *opts,
++ struct gcc_options *opts_set)
+ {
+ /* -falign-functions without argument: supply one. */
+- if (opts->x_flag_align_functions && !opts->x_str_align_functions)
++ if (opts->x_flag_align_functions && !opts_set->x_str_align_functions)
+ opts->x_str_align_functions = TARGET_THUMB_P (opts->x_target_flags)
+ && opts->x_optimize_size ? "2" : "4";
+ }
+@@ -3037,7 +3038,7 @@ arm_override_options_after_change_1 (str
+ static void
+ arm_override_options_after_change (void)
+ {
+- arm_override_options_after_change_1 (&global_options);
++ arm_override_options_after_change_1 (&global_options, &global_options_set);
+ }
+
+ /* Implement TARGET_OPTION_SAVE. */
+@@ -3065,7 +3066,7 @@ static void
+ arm_option_override_internal (struct gcc_options *opts,
+ struct gcc_options *opts_set)
+ {
+- arm_override_options_after_change_1 (opts);
++ arm_override_options_after_change_1 (opts, opts_set);
+
+ if (TARGET_INTERWORK && !bitmap_bit_p (arm_active_target.isa, isa_bit_thumb))
+ {
+@@ -32335,7 +32336,7 @@ arm_set_current_function (tree fndecl)
+
+ save_restore_target_globals (new_tree);
+
+- arm_override_options_after_change_1 (&global_options);
++ arm_override_options_after_change_1 (&global_options, &global_options_set);
+ }
+
+ /* Implement TARGET_OPTION_PRINT. */
diff --git a/gcc10-pr96939-3.patch b/gcc10-pr96939-3.patch
new file mode 100644
index 0000000..f133f8d
--- /dev/null
+++ b/gcc10-pr96939-3.patch
@@ -0,0 +1,111 @@
+2020-09-13 Jakub Jelinek <jakub@redhat.com>
+
+ * config/arm/arm.opt (arm_arch_specified, arm_cpu_specified,
+ arm_tune_specified): New TargetVariables.
+ * config/arm/arm.c (arm_configure_build_target): Comment out
+ opts_set argument name. Use opts->x_arm_*_specified instead
+ of opts_set->x_arm_*_string.
+ * common/config/arm/arm-common.c (arm_handle_option): New function.
+ (TARGET_HANDLE_OPTION): Redefine.
+
+--- gcc/config/arm/arm.opt.jj 2020-09-12 13:36:27.619716335 +0200
++++ gcc/config/arm/arm.opt 2020-09-12 13:38:48.547661292 +0200
+@@ -30,6 +30,15 @@ const char *x_arm_cpu_string
+ TargetSave
+ const char *x_arm_tune_string
+
++TargetVariable
++unsigned char arm_arch_specified = 0
++
++TargetVariable
++unsigned char arm_cpu_specified = 0
++
++TargetVariable
++unsigned char arm_tune_specified = 0
++
+ Enum
+ Name(tls_type) Type(enum arm_tls_type)
+ TLS dialect to use:
+--- gcc/config/arm/arm.c.jj 2020-09-12 13:36:27.619716335 +0200
++++ gcc/config/arm/arm.c 2020-09-12 13:49:26.166363387 +0200
+@@ -3181,7 +3181,7 @@ static sbitmap isa_quirkbits;
+ void
+ arm_configure_build_target (struct arm_build_target *target,
+ struct cl_target_option *opts,
+- struct gcc_options *opts_set,
++ struct gcc_options */* opts_set */,
+ bool warn_compatible)
+ {
+ const cpu_option *arm_selected_tune = NULL;
+@@ -3196,7 +3196,7 @@ arm_configure_build_target (struct arm_b
+ target->core_name = NULL;
+ target->arch_name = NULL;
+
+- if (opts_set->x_arm_arch_string)
++ if (opts->x_arm_arch_specified)
+ {
+ arm_selected_arch = arm_parse_arch_option_name (all_architectures,
+ "-march",
+@@ -3204,7 +3204,7 @@ arm_configure_build_target (struct arm_b
+ arch_opts = strchr (opts->x_arm_arch_string, '+');
+ }
+
+- if (opts_set->x_arm_cpu_string)
++ if (opts->x_arm_cpu_specified)
+ {
+ arm_selected_cpu = arm_parse_cpu_option_name (all_cores, "-mcpu",
+ opts->x_arm_cpu_string);
+@@ -3214,7 +3214,7 @@ arm_configure_build_target (struct arm_b
+ options for tuning. */
+ }
+
+- if (opts_set->x_arm_tune_string)
++ if (opts->x_arm_tune_specified)
+ {
+ arm_selected_tune = arm_parse_cpu_option_name (all_cores, "-mtune",
+ opts->x_arm_tune_string);
+--- gcc/common/config/arm/arm-common.c.jj 2020-07-28 15:39:09.705760394 +0200
++++ gcc/common/config/arm/arm-common.c 2020-09-12 13:50:09.021738456 +0200
+@@ -1021,6 +1021,34 @@ arm_asm_auto_mfpu (int argc, const char
+
+ #undef ARM_CPU_NAME_LENGTH
+
++bool
++arm_handle_option (struct gcc_options *opts,
++ struct gcc_options *opts_set ATTRIBUTE_UNUSED,
++ const struct cl_decoded_option *decoded,
++ location_t loc ATTRIBUTE_UNUSED)
++{
++ size_t code = decoded->opt_index;
++ const char *arg = decoded->arg;
++ int val = decoded->value;
++
++ switch (code)
++ {
++ case OPT_march_:
++ opts->x_arm_arch_specified = true;
++ return true;
++
++ case OPT_mcpu_:
++ opts->x_arm_cpu_specified = true;
++ return true;
++
++ case OPT_mtune_:
++ opts->x_arm_tune_specified = true;
++ return true;
++
++ default:
++ return true;
++ }
++}
+
+ #undef TARGET_DEFAULT_TARGET_FLAGS
+ #define TARGET_DEFAULT_TARGET_FLAGS (TARGET_DEFAULT | MASK_SCHED_PROLOG)
+@@ -1031,4 +1059,7 @@ arm_asm_auto_mfpu (int argc, const char
+ #undef TARGET_EXCEPT_UNWIND_INFO
+ #define TARGET_EXCEPT_UNWIND_INFO arm_except_unwind_info
+
++#undef TARGET_HANDLE_OPTION
++#define TARGET_HANDLE_OPTION arm_handle_option
++
+ struct gcc_targetm_common targetm_common = TARGETM_COMMON_INITIALIZER;
diff --git a/gcc10-pr96939.patch b/gcc10-pr96939.patch
new file mode 100644
index 0000000..4659c3f
--- /dev/null
+++ b/gcc10-pr96939.patch
@@ -0,0 +1,64 @@
+2020-09-07 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/96939
+ * config/arm/arm.c (arm_override_options_after_change): Don't call
+ arm_configure_build_target here.
+ (arm_set_current_function): Call arm_override_options_after_change_1
+ at the end.
+
+ * gcc.target/arm/lto/pr96939_0.c: New test.
+ * gcc.target/arm/lto/pr96939_1.c: New file.
+
+--- gcc/config/arm/arm.c.jj 2020-07-30 15:04:38.136293101 +0200
++++ gcc/config/arm/arm.c 2020-09-07 10:43:54.809561852 +0200
+@@ -3037,10 +3037,6 @@ arm_override_options_after_change_1 (str
+ static void
+ arm_override_options_after_change (void)
+ {
+- arm_configure_build_target (&arm_active_target,
+- TREE_TARGET_OPTION (target_option_default_node),
+- &global_options_set, false);
+-
+ arm_override_options_after_change_1 (&global_options);
+ }
+
+@@ -32338,6 +32334,8 @@ arm_set_current_function (tree fndecl)
+ cl_target_option_restore (&global_options, TREE_TARGET_OPTION (new_tree));
+
+ save_restore_target_globals (new_tree);
++
++ arm_override_options_after_change_1 (&global_options);
+ }
+
+ /* Implement TARGET_OPTION_PRINT. */
+--- gcc/testsuite/gcc.target/arm/lto/pr96939_0.c.jj 2020-09-07 11:26:45.909937609 +0200
++++ gcc/testsuite/gcc.target/arm/lto/pr96939_0.c 2020-09-07 11:29:18.722706535 +0200
+@@ -0,0 +1,15 @@
++/* PR target/96939 */
++/* { dg-lto-do link } */
++/* { dg-require-effective-target arm_arch_v8a_ok } */
++/* { dg-lto-options { { -flto -O2 } } } */
++
++extern unsigned crc (unsigned, const void *);
++typedef unsigned (*fnptr) (unsigned, const void *);
++volatile fnptr fn;
++
++int
++main ()
++{
++ fn = crc;
++ return 0;
++}
+--- gcc/testsuite/gcc.target/arm/lto/pr96939_1.c.jj 2020-09-07 11:26:49.365887153 +0200
++++ gcc/testsuite/gcc.target/arm/lto/pr96939_1.c 2020-09-07 11:25:13.885281180 +0200
+@@ -0,0 +1,10 @@
++/* PR target/96939 */
++/* { dg-options "-march=armv8-a+crc" } */
++
++#include <arm_acle.h>
++
++unsigned
++crc (unsigned x, const void *y)
++{
++ return __crc32cw (x, *(unsigned *) y);
++}
diff --git a/gcc10-pr97032.patch b/gcc10-pr97032.patch
new file mode 100644
index 0000000..109a90b
--- /dev/null
+++ b/gcc10-pr97032.patch
@@ -0,0 +1,89 @@
+2020-09-14 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/97032
+ * cfgexpand.c (asm_clobber_reg_kind): Set sp_is_clobbered_by_asm
+ to true if the stack pointer is clobbered by asm statement.
+ * emit-rtl.h (rtl_data): Add sp_is_clobbered_by_asm.
+ * config/i386/i386.c (ix86_get_drap_rtx): Set need_drap to true
+ if the stack pointer is clobbered by asm statement.
+
+ * gcc.target/i386/pr97032.c: New test.
+
+--- gcc/cfgexpand.c
++++ gcc/cfgexpand.c
+@@ -2879,11 +2879,15 @@ asm_clobber_reg_is_valid (int regno, int nregs, const char *regname)
+ as it was before, so no asm can validly clobber the stack pointer in
+ the usual sense. Adding the stack pointer to the clobber list has
+ traditionally had some undocumented and somewhat obscure side-effects. */
+- if (overlaps_hard_reg_set_p (regset, Pmode, STACK_POINTER_REGNUM)
+- && warning (OPT_Wdeprecated, "listing the stack pointer register"
+- " %qs in a clobber list is deprecated", regname))
+- inform (input_location, "the value of the stack pointer after an %<asm%>"
+- " statement must be the same as it was before the statement");
++ if (overlaps_hard_reg_set_p (regset, Pmode, STACK_POINTER_REGNUM))
++ {
++ crtl->sp_is_clobbered_by_asm = true;
++ if (warning (OPT_Wdeprecated, "listing the stack pointer register"
++ " %qs in a clobber list is deprecated", regname))
++ inform (input_location, "the value of the stack pointer after"
++ " an %<asm%> statement must be the same as it was before"
++ " the statement");
++ }
+
+ return is_valid;
+ }
+--- gcc/config/i386/i386.c
++++ gcc/config/i386/i386.c
+@@ -12283,10 +12283,12 @@ ix86_update_stack_boundary (void)
+ static rtx
+ ix86_get_drap_rtx (void)
+ {
+- /* We must use DRAP if there are outgoing arguments on stack and
++ /* We must use DRAP if there are outgoing arguments on stack or
++ the stack pointer register is clobbered by asm statment and
+ ACCUMULATE_OUTGOING_ARGS is false. */
+ if (ix86_force_drap
+- || (cfun->machine->outgoing_args_on_stack
++ || ((cfun->machine->outgoing_args_on_stack
++ || crtl->sp_is_clobbered_by_asm)
+ && !ACCUMULATE_OUTGOING_ARGS))
+ crtl->need_drap = true;
+
+--- gcc/emit-rtl.h
++++ gcc/emit-rtl.h
+@@ -266,6 +266,9 @@ struct GTY(()) rtl_data {
+ pass_stack_ptr_mod has run. */
+ bool sp_is_unchanging;
+
++ /* True if the stack pointer is clobbered by asm statement. */
++ bool sp_is_clobbered_by_asm;
++
+ /* Nonzero if function being compiled doesn't contain any calls
+ (ignoring the prologue and epilogue). This is set prior to
+ register allocation in IRA and is valid for the remaining
+--- gcc/testsuite/gcc.target/i386/pr97032.c
++++ gcc/testsuite/gcc.target/i386/pr97032.c
+@@ -0,0 +1,23 @@
++/* { dg-do compile { target { ia32 && fstack_protector } } } */
++/* { dg-options "-O2 -mincoming-stack-boundary=2 -fstack-protector-all" } */
++
++#include <stdarg.h>
++
++extern int *__errno_location (void);
++
++long
++sys_socketcall (int op, ...)
++{
++ long int res;
++ va_list ap;
++ va_start (ap, op);
++ asm volatile ("push %%ebx; movl %2, %%ebx; int $0x80; pop %%ebx"
++ /* { dg-warning "listing the stack pointer register" "" { target *-*-* } .-1 } */
++ : "=a" (res) : "0" (102), "ri" (16), "c" (ap) : "memory", "esp");
++ if (__builtin_expect (res > 4294963200UL, 0))
++ *__errno_location () = -res;
++ va_end (ap);
++ return res;
++}
++
++/* { dg-final { scan-assembler "call\[ \t\]*_?__errno_location" } } */
diff --git a/gcc10-pr97060.patch b/gcc10-pr97060.patch
new file mode 100644
index 0000000..a38da60
--- /dev/null
+++ b/gcc10-pr97060.patch
@@ -0,0 +1,53 @@
+2020-09-16 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/97060
+ * dwarf2out.c (dwarf2out_early_global_decl): For FUNCTION_DECLs
+ and their abstract origins, if they don't have gimple body,
+ set current_function_decl to NULL rather than the decl or origin.
+
+ * gcc.dg/debug/dwarf2/pr97060.c: New test.
+
+--- gcc/dwarf2out.c.jj 2020-09-07 13:17:58.383594248 +0200
++++ gcc/dwarf2out.c 2020-09-16 11:14:57.763550862 +0200
+@@ -26547,7 +26547,11 @@ dwarf2out_early_global_decl (tree decl)
+ && ((origin_die = lookup_decl_die (origin)) == NULL
+ || is_declaration_die (origin_die)))
+ {
+- current_function_decl = origin;
++ cgraph_node *cnode = cgraph_node::get (origin);
++ if (cnode && cnode->has_gimple_body_p ())
++ current_function_decl = origin;
++ else
++ current_function_decl = NULL_TREE;
+ dwarf2out_decl (origin);
+ }
+
+@@ -26556,7 +26560,11 @@ dwarf2out_early_global_decl (tree decl)
+ if ((old_die = lookup_decl_die (decl)) == NULL
+ || is_declaration_die (old_die))
+ {
+- current_function_decl = decl;
++ cgraph_node *cnode = cgraph_node::get (decl);
++ if (cnode && cnode->has_gimple_body_p ())
++ current_function_decl = decl;
++ else
++ current_function_decl = NULL_TREE;
+ dwarf2out_decl (decl);
+ }
+
+--- gcc/testsuite/gcc.dg/debug/dwarf2/pr97060.c.jj 2020-09-16 11:03:22.358420449 +0200
++++ gcc/testsuite/gcc.dg/debug/dwarf2/pr97060.c 2020-09-16 11:03:17.717486318 +0200
+@@ -0,0 +1,13 @@
++/* PR debug/97060 */
++/* { dg-do compile } */
++/* { dg-options "-g -dA" } */
++/* { dg-final { scan-assembler-times "DW_AT_declaration" 2 } } */
++
++extern int foo (unsigned int, unsigned int);
++
++int
++bar (void)
++{
++ foo (1, 2);
++ return 0;
++}
diff --git a/sources b/sources
index 5f420de..65d1391 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (gcc-10.2.1-20200826.tar.xz) = b6949ea780618400dec06b8fc7b2728414d46e5972970ed70949ce16100547e4a9a6a5ce84ae1f47309a0610607b5454b0acc5fe5ecbb2889c84346bcdbdc8ab
+SHA512 (gcc-10.2.1-20200916.tar.xz) = 1dd5ef9b6eb785e8356751b198462f61ed6a06b460285f4ddf274a85ed79a452723fd71b6bf5eb3c68821bf798299a1a352481e265e61bd836976927187879e5
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 002a48a7b689a81abbf16161bcaec001a842e67dfbe372e9e109092703bfc666675f16198f60ca429370e8850d564547dc505df81bc3aaca4ce6defbc014ad6c
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7
next reply other threads:[~2026-06-29 12:28 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-29 12:28 Jakub Jelinek [this message]
2026-06-29 12:28 [rpms/gcc] rhel-f41-base: 10.2.1-4 Jakub Jelinek
2026-06-29 12:28 Jakub Jelinek
2026-06-29 12:28 Jakub Jelinek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=178273613323.1.10118416873723467558.rpms-gcc-d10315732bb8@fedoraproject.org \
--to=jakub@redhat.com \
--cc=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox