public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/gcc] rhel-f41-base: 5.0.0-0.16
@ 2026-06-29 12:26 Jakub Jelinek
  0 siblings, 0 replies; only message in thread
From: Jakub Jelinek @ 2026-06-29 12:26 UTC (permalink / raw)
  To: git-commits

A new commit has been pushed.

Repo   : rpms/gcc
Branch : rhel-f41-base
Commit : 5b794eb00418e7becbe020d4d5eb23ba3a04de29
Author : Jakub Jelinek <jakub@redhat.com>
Date   : 2015-02-24T10:12:36+01:00
Stats  : +45/-353 in 7 file(s)
URL    : https://src.fedoraproject.org/rpms/gcc/c/5b794eb00418e7becbe020d4d5eb23ba3a04de29?branch=rhel-f41-base

Log:
5.0.0-0.16

---
diff --git a/.gitignore b/.gitignore
index 14dd314..3110f6a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@
 /gcc-5.0.0-20150214.tar.bz2
 /gcc-5.0.0-20150216.tar.bz2
 /gcc-5.0.0-20150217.tar.bz2
+/gcc-5.0.0-20150224.tar.bz2

diff --git a/gcc.spec b/gcc.spec
index 39f2d93..159612f 100644
--- a/gcc.spec
+++ b/gcc.spec
@@ -1,9 +1,9 @@
-%global DATE 20150217
-%global SVNREV 220752
+%global DATE 20150224
+%global SVNREV 220934
 %global gcc_version 5.0.0
 # 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 0.15
+%global gcc_release 0.16
 %global _unpackaged_files_terminate_build 0
 %global _performance_build 1
 %global multilib_64_archs sparc64 ppc64 ppc64p7 s390x x86_64
@@ -79,7 +79,7 @@
 Summary: Various compilers (C, C++, Objective-C, Java, ...)
 Name: gcc
 Version: %{gcc_version}
-Release: %{gcc_release}%{?dist}.1
+Release: %{gcc_release}%{?dist}
 # libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
 # GCC Runtime Exception.
 License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
@@ -198,9 +198,7 @@ Patch11: gcc5-no-add-needed.patch
 Patch12: gcc5-libgo-p224.patch
 Patch13: gcc5-aarch64-async-unw-tables.patch
 Patch14: gcc5-libsanitize-aarch64-va42.patch
-Patch15: gcc5-pr32219-revert.patch
-Patch16: gcc5-pr65074-test.patch
-Patch17: gcc5-pr65087.patch
+Patch15: gcc5-arm-fnsect.patch
 
 # On ARM EABI systems, we do want -gnueabi to be part of the
 # target triple.
@@ -750,11 +748,7 @@ package or when debugging this package.
 rm -f libgo/go/crypto/elliptic/p224{,_test}.go
 %patch13 -p0 -b .aarch64-async-unw-tables~
 %patch14 -p0 -b .libsanitize-aarch64-va42~
-%patch15 -p0 -b .pr32219-revert~
-%patch16 -p0 -b .pr65074-test~
-rm -f gcc/testsuite/gcc.target/i386/pr32219-*.c
-rm -f gcc/testsuite/gcc.dg/visibility-2{2,3}.c
-%patch17 -p0 -b .pr65087~
+%patch15 -p0 -b .arm-fnsect~
 
 %if 0%{?_enable_debug_packages}
 mkdir dwz-wrapper
@@ -2940,9 +2934,18 @@ fi
 %doc rpm.doc/changelogs/libcc1/ChangeLog*
 
 %changelog
-* Sat Feb 21 2015 Till Maas <opensource@till.name> - 5.0.0-0.15.1
-- Rebuilt for Fedora 23 Change
-  https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code
+* Tue Feb 24 2015 Jakub Jelinek <jakub@redhat.com> 5.0.0-0.16
+- update from the trunk
+  - PRs ada/65100, ada/65156, bootstrap/63888, debug/58123, fortran/61960,
+	fortran/63427, fortran/64980, gcov-profile/64634, ipa/65087,
+	libstdc++/58357, libstdc++/64695, libstdc++/65085, lto/65012,
+	middle-end/65074, sanitizer/65081, target/63892, target/64172,
+	target/64452, target/64793, target/65064, target/65109, target/65153,
+	target/65163, target/65172, target/65181, testsuite/64158,
+	testsuite/65093, testsuite/65107, testsuite/65116, testsuite/65126,
+	tree-optimization/62217, tree-optimization/65063,
+	tree-optimization/65136, tree-optimization/65170
+- fix arm_function_in_section_p
 
 * Tue Feb 17 2015 Jakub Jelinek <jakub@redhat.com> 5.0.0-0.15
 - update from the trunk

diff --git a/gcc5-arm-fnsect.patch b/gcc5-arm-fnsect.patch
new file mode 100644
index 0000000..33d8984
--- /dev/null
+++ b/gcc5-arm-fnsect.patch
@@ -0,0 +1,25 @@
+2015-02-19  Richard Henderson  <rth@redhat.com>
+
+	* config/arm/arm.c (arm_function_in_section_p): Delete bogus
+	TREE_STATIC check, use decl_binds_to_current_def_p instead of
+	targetm.binds_local_p.
+
+--- gcc/config/arm/arm.c
++++ gcc/config/arm/arm.c
+@@ -6392,14 +6392,8 @@ arm_set_default_type_attributes (tree type)
+ static bool
+ arm_function_in_section_p (tree decl, section *section)
+ {
+-  /* We can only be certain about functions defined in the same
+-     compilation unit.  */
+-  if (!TREE_STATIC (decl))
+-    return false;
+-
+-  /* Make sure that SYMBOL always binds to the definition in this
+-     compilation unit.  */
+-  if (!targetm.binds_local_p (decl))
++  /* We can only be certain about the prevailing symbol definition.  */
++  if (!decl_binds_to_current_def_p (decl))
+     return false;
+
+   /* If DECL_SECTION_NAME is set, assume it is trustworthy.  */

diff --git a/gcc5-pr32219-revert.patch b/gcc5-pr32219-revert.patch
deleted file mode 100644
index 8cbae7b..0000000
--- a/gcc5-pr32219-revert.patch
+++ /dev/null
@@ -1,269 +0,0 @@
-Revert:
-2015-02-12  H.J. Lu  <hongjiu.lu@intel.com>
-	    Richard Henderson  <rth@redhat.com>
-
-	PR rtl/32219
-	* cgraphunit.c (cgraph_node::finalize_function): Set definition
-	before notice_global_symbol.
-	(varpool_node::finalize_decl): Likewise.
-	* varasm.c (default_binds_local_p_2): Rename from
-	default_binds_local_p_1, add weak_dominate argument.  Use direct
-	returns instead of assigning to local variable.  Unify varpool and
-	cgraph paths via symtab_node.  Reject undef weak variables before
-	testing visibility.  Reorder tests for simplicity.
-	(default_binds_local_p): Use default_binds_local_p_2.
-	(default_binds_local_p_1): Likewise.
-	(decl_binds_to_current_def_p): Unify varpool and cgraph paths
-	via symtab_node.
-	(default_elf_asm_output_external): Emit visibility when specified.
-
---- gcc/cgraphunit.c	(revision 220674)
-+++ gcc/cgraphunit.c	(revision 220673)
-@@ -442,10 +442,8 @@ cgraph_node::finalize_function (tree dec
-       node->local.redefined_extern_inline = true;
-     }
- 
--  /* Set definition first before calling notice_global_symbol so that
--     it is available to notice_global_symbol.  */
--  node->definition = true;
-   notice_global_symbol (decl);
-+  node->definition = true;
-   node->lowered = DECL_STRUCT_FUNCTION (decl)->cfg != NULL;
- 
-   /* With -fkeep-inline-functions we are keeping all inline functions except
-@@ -805,10 +803,8 @@ varpool_node::finalize_decl (tree decl)
- 
-   if (node->definition)
-     return;
--  /* Set definition first before calling notice_global_symbol so that
--     it is available to notice_global_symbol.  */
--  node->definition = true;
-   notice_global_symbol (decl);
-+  node->definition = true;
-   if (TREE_THIS_VOLATILE (decl) || DECL_PRESERVE_P (decl)
-       /* Traditionally we do not eliminate static variables when not
- 	 optimizing and when not doing toplevel reoder.  */
---- gcc/varasm.c	(revision 220674)
-+++ gcc/varasm.c	(revision 220673)
-@@ -6802,97 +6802,97 @@ resolution_local_p (enum ld_plugin_symbo
- 	  || resolution == LDPR_RESOLVED_EXEC);
- }
- 
--static bool
--default_binds_local_p_2 (const_tree exp, bool shlib, bool weak_dominate)
-+/* Assume ELF-ish defaults, since that's pretty much the most liberal
-+   wrt cross-module name binding.  */
-+
-+bool
-+default_binds_local_p (const_tree exp)
- {
-+  return default_binds_local_p_1 (exp, flag_shlib);
-+}
-+
-+bool
-+default_binds_local_p_1 (const_tree exp, int shlib)
-+{
-+  bool local_p;
-+  bool resolved_locally = false;
-+  bool resolved_to_local_def = false;
-+
-+  /* With resolution file in hands, take look into resolutions.
-+     We can't just return true for resolved_locally symbols,
-+     because dynamic linking might overwrite symbols
-+     in shared libraries.  */
-+  if (TREE_CODE (exp) == VAR_DECL && TREE_PUBLIC (exp)
-+      && (TREE_STATIC (exp) || DECL_EXTERNAL (exp)))
-+    {
-+      varpool_node *vnode = varpool_node::get (exp);
-+      if (vnode && (resolution_local_p (vnode->resolution) || vnode->in_other_partition))
-+	resolved_locally = true;
-+      if (vnode
-+	  && resolution_to_local_definition_p (vnode->resolution))
-+	resolved_to_local_def = true;
-+    }
-+  else if (TREE_CODE (exp) == FUNCTION_DECL && TREE_PUBLIC (exp))
-+    {
-+      struct cgraph_node *node = cgraph_node::get (exp);
-+      if (node
-+	  && (resolution_local_p (node->resolution) || node->in_other_partition))
-+	resolved_locally = true;
-+      if (node
-+	  && resolution_to_local_definition_p (node->resolution))
-+	resolved_to_local_def = true;
-+    }
-+
-   /* A non-decl is an entry in the constant pool.  */
-   if (!DECL_P (exp))
--    return true;
--
-+    local_p = true;
-   /* Weakrefs may not bind locally, even though the weakref itself is always
-      static and therefore local.  Similarly, the resolver for ifunc functions
-      might resolve to a non-local function.
-      FIXME: We can resolve the weakref case more curefuly by looking at the
-      weakref alias.  */
--  if (lookup_attribute ("weakref", DECL_ATTRIBUTES (exp))
-+  else if (lookup_attribute ("weakref", DECL_ATTRIBUTES (exp))
- 	   || (TREE_CODE (exp) == FUNCTION_DECL
- 	       && lookup_attribute ("ifunc", DECL_ATTRIBUTES (exp))))
--    return false;
--
-+    local_p = false;
-   /* Static variables are always local.  */
--  if (! TREE_PUBLIC (exp))
--    return true;
--
--  /* With resolution file in hand, take look into resolutions.
--     We can't just return true for resolved_locally symbols,
--     because dynamic linking might overwrite symbols
--     in shared libraries.  */
--  bool resolved_locally = false;
--  bool defined_locally = false;
--  if (symtab_node *node = symtab_node::get (exp))
--    {
--      if ((node->definition && !DECL_EXTERNAL (node->decl))
--	  || node->in_other_partition)
--	{
--	  defined_locally = true;
--	  resolved_locally = (weak_dominate && !shlib);
--	}
--      if (resolution_to_local_definition_p (node->resolution))
--	defined_locally = resolved_locally = true;
--      else if (resolution_local_p (node->resolution))
--	resolved_locally = true;
--    }
--
--  /* Undefined weak symbols are never defined locally.  */
--  if (DECL_WEAK (exp) && !defined_locally)
--    return false;
--
--  /* A symbol is local if the user has said explicitly that it will be,
--     or if we have a definition for the symbol.  We cannot infer visibility
--     for undefined symbols.  */
--  if (DECL_VISIBILITY (exp) != VISIBILITY_DEFAULT
--      && (DECL_VISIBILITY_SPECIFIED (exp) || defined_locally))
--    return true;
--
-+  else if (! TREE_PUBLIC (exp))
-+    local_p = true;
-+  /* A variable is local if the user has said explicitly that it will
-+     be.  */
-+  else if ((DECL_VISIBILITY_SPECIFIED (exp)
-+	    || resolved_to_local_def)
-+	   && DECL_VISIBILITY (exp) != VISIBILITY_DEFAULT)
-+    local_p = true;
-+  /* Variables defined outside this object might not be local.  */
-+  else if (DECL_EXTERNAL (exp) && !resolved_locally)
-+    local_p = false;
-+  /* If defined in this object and visibility is not default, must be
-+     local.  */
-+  else if (DECL_VISIBILITY (exp) != VISIBILITY_DEFAULT)
-+    local_p = true;
-+  /* Default visibility weak data can be overridden by a strong symbol
-+     in another module and so are not local.  */
-+  else if (DECL_WEAK (exp)
-+	   && !resolved_locally)
-+    local_p = false;
-   /* If PIC, then assume that any global name can be overridden by
-      symbols resolved from other modules.  */
--  if (shlib)
--    return false;
--
--  /* Variables defined outside this object might not be local.  */
--  if (DECL_EXTERNAL (exp) && !resolved_locally)
--    return false;
--
--  /* Non-dominant weak symbols are not defined locally.  */
--  if (DECL_WEAK (exp) && !resolved_locally)
--    return false;
--
-+  else if (shlib)
-+    local_p = false;
-   /* Uninitialized COMMON variable may be unified with symbols
-      resolved from other modules.  */
--  if (DECL_COMMON (exp)
--      && !resolved_locally
--      && (DECL_INITIAL (exp) == NULL
--	  || (!in_lto_p && DECL_INITIAL (exp) == error_mark_node)))
--    return false;
--
-+  else if (DECL_COMMON (exp)
-+	   && !resolved_locally
-+	   && (DECL_INITIAL (exp) == NULL
-+	       || (!in_lto_p && DECL_INITIAL (exp) == error_mark_node)))
-+    local_p = false;
-   /* Otherwise we're left with initialized (or non-common) global data
-      which is of necessity defined locally.  */
--  return true;
--}
--
--/* Assume ELF-ish defaults, since that's pretty much the most liberal
--   wrt cross-module name binding.  */
--
--bool
--default_binds_local_p (const_tree exp)
--{
--  return default_binds_local_p_2 (exp, flag_shlib != 0, true);
--}
-+  else
-+    local_p = true;
- 
--bool
--default_binds_local_p_1 (const_tree exp, int shlib)
--{
--  return default_binds_local_p_2 (exp, shlib != 0, false);
-+  return local_p;
- }
- 
- /* Return true when references to DECL must bind to current definition in
-@@ -6913,14 +6914,22 @@ decl_binds_to_current_def_p (const_tree
-     return false;
-   if (!TREE_PUBLIC (decl))
-     return true;
--
-   /* When resolution is available, just use it.  */
--  if (symtab_node *node = symtab_node::get (decl))
-+  if (TREE_CODE (decl) == VAR_DECL
-+      && (TREE_STATIC (decl) || DECL_EXTERNAL (decl)))
-     {
--      if (node->resolution != LDPR_UNKNOWN)
-+      varpool_node *vnode = varpool_node::get (decl);
-+      if (vnode
-+	  && vnode->resolution != LDPR_UNKNOWN)
-+	return resolution_to_local_definition_p (vnode->resolution);
-+    }
-+  else if (TREE_CODE (decl) == FUNCTION_DECL)
-+    {
-+      struct cgraph_node *node = cgraph_node::get (decl);
-+      if (node
-+	  && node->resolution != LDPR_UNKNOWN)
- 	return resolution_to_local_definition_p (node->resolution);
-     }
--
-   /* Otherwise we have to assume the worst for DECL_WEAK (hidden weaks
-      binds locally but still can be overwritten), DECL_COMMON (can be merged
-      with a non-common definition somewhere in the same module) or
-@@ -7440,10 +7449,9 @@ default_elf_asm_output_external (FILE *f
- {
-   /* We output the name if and only if TREE_SYMBOL_REFERENCED is
-      set in order to avoid putting out names that are never really
--     used.  Always output visibility specified in the source.  */
-+     used. */
-   if (TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl))
--      && (DECL_VISIBILITY_SPECIFIED (decl)
--	  || targetm.binds_local_p (decl)))
-+      && targetm.binds_local_p (decl))
-     maybe_assemble_visibility (decl);
- }
- 
---- gcc/testsuite/gcc.target/i386/pr64317.c	(revision 220674)
-+++ gcc/testsuite/gcc.target/i386/pr64317.c	(revision 220673)
-@@ -1,7 +1,7 @@
- /* { dg-do compile { target { *-*-linux* && ia32 } } } */
- /* { dg-options "-O2 -fpie" } */
- /* { dg-final { scan-assembler "addl\[ \\t\]+\[$\]_GLOBAL_OFFSET_TABLE_, %ebx" } } */
--/* { dg-final { scan-assembler "movl\[ \\t\]+c@GOTOFF\[(\]%ebx\[)\]" } } */
-+/* { dg-final { scan-assembler "movl\[ \\t\]+c@GOT\[(\]%ebx\[)\]" } } */
- /* { dg-final { scan-assembler-not "movl\[ \\t\]+\[0-9]+\[(\]%esp\[)\], %ebx" } } */
- long c;
- 

diff --git a/gcc5-pr65074-test.patch b/gcc5-pr65074-test.patch
deleted file mode 100644
index ace9779..0000000
--- a/gcc5-pr65074-test.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-2015-02-16  Jakub Jelinek  <jakub@redhat.com>
-
-	PR middle-end/65074
-	* g++.dg/opt/pr65074.C: New test.
-
---- gcc/testsuite/g++.dg/opt/pr65074.C.jj	2015-02-16 09:53:52.171683872 +0100
-+++ gcc/testsuite/g++.dg/opt/pr65074.C	2015-02-16 09:53:24.000000000 +0100
-@@ -0,0 +1,19 @@
-+// PR middle-end/65074
-+// { dg-do link { target pie } }
-+// { dg-options "-pie -fpie -O2" }
-+
-+#include <fstream>
-+
-+using namespace std;
-+
-+__attribute__((noinline, noclone)) void
-+foo (const char *fname)
-+{
-+  ifstream f (fname);
-+}
-+
-+int
-+main ()
-+{
-+  foo ("foobar");
-+}

diff --git a/gcc5-pr65087.patch b/gcc5-pr65087.patch
deleted file mode 100644
index 49d3ede..0000000
--- a/gcc5-pr65087.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-2015-02-17  Jakub Jelinek  <jakub@redhat.com>
-
-	PR ipa/65087
-	* cgraphclones.c (cgraph_node::create_virtual_clone): Only copy
-	section if !implicit_section.
-	(cgraph_node::create_version_clone_with_body): Likewise.
-	* trans-mem.c (ipa_tm_create_version): Likewise.
-
---- gcc/cgraphclones.c.jj	2015-02-16 20:16:43.000000000 +0100
-+++ gcc/cgraphclones.c	2015-02-17 09:35:19.682184215 +0100
-@@ -617,7 +617,7 @@ cgraph_node::create_virtual_clone (vec<c
-      ABI support for this.  */
-   set_new_clone_decl_and_node_flags (new_node);
-   new_node->clone.tree_map = tree_map;
--  if (!DECL_ONE_ONLY (old_decl))
-+  if (!implicit_section)
-     new_node->set_section (get_section ());
- 
-   /* Clones of global symbols or symbols with unique names are unique.  */
-@@ -1011,7 +1011,8 @@ cgraph_node::create_version_clone_with_b
-   new_version_node->externally_visible = 0;
-   new_version_node->local.local = 1;
-   new_version_node->lowered = true;
--  new_version_node->set_section (get_section ());
-+  if (!implicit_section)
-+    new_version_node->set_section (get_section ());
-   /* Clones of global symbols or symbols with unique names are unique.  */
-   if ((TREE_PUBLIC (old_decl)
-        && !DECL_EXTERNAL (old_decl)
---- gcc/trans-mem.c.jj	2015-02-16 20:16:43.000000000 +0100
-+++ gcc/trans-mem.c	2015-02-17 09:35:19.682184215 +0100
-@@ -4967,7 +4967,8 @@ ipa_tm_create_version (struct cgraph_nod
-   new_node->externally_visible = old_node->externally_visible;
-   new_node->lowered = true;
-   new_node->tm_clone = 1;
--  new_node->set_section (old_node->get_section ());
-+  if (!old_node->implicit_section)
-+    new_node->set_section (old_node->get_section ());
-   get_cg_data (&old_node, true)->clone = new_node;
- 
-   if (old_node->get_availability () >= AVAIL_INTERPOSABLE)

diff --git a/sources b/sources
index 7fe5049..0ad0247 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-a9b3b45dd68912df007f5e7fd95bb106  gcc-5.0.0-20150217.tar.bz2
+d5755adb2e9c48a868281ec654eab080  gcc-5.0.0-20150224.tar.bz2

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-06-29 12:26 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-29 12:26 [rpms/gcc] rhel-f41-base: 5.0.0-0.16 Jakub Jelinek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox