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

A new commit has been pushed.

Repo   : rpms/gcc
Branch : rhel-f41-base
Commit : 7e5ced8dfbdbfbbb647e5253784647c5d97285f7
Author : Jakub Jelinek <jakub@fedoraproject.org>
Date   : 2009-10-01T08:07:34+00:00
Stats  : +238/-31 in 4 file(s)
URL    : https://src.fedoraproject.org/rpms/gcc/c/7e5ced8dfbdbfbbb647e5253784647c5d97285f7?branch=rhel-f41-base

Log:
4.4.1-18

---
diff --git a/.cvsignore b/.cvsignore
index 20d471f..241fa39 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -1,2 +1,2 @@
 fastjar-0.97.tar.gz
-gcc-4.4.1-20090925.tar.bz2
+gcc-4.4.1-20091001.tar.bz2

diff --git a/gcc.spec b/gcc.spec
index 774a47c..5ad8e5b 100644
--- a/gcc.spec
+++ b/gcc.spec
@@ -1,9 +1,9 @@
-%global DATE 20090925
-%global SVNREV 152158
+%global DATE 20091001
+%global SVNREV 152364
 %global gcc_version 4.4.1
 # 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 17
+%global gcc_release 18
 %global _unpackaged_files_terminate_build 0
 %global multilib_64_archs sparc64 ppc64 s390x x86_64
 %global include_gappletviewer 1
@@ -160,6 +160,7 @@ Patch16: gcc44-unwind-debug-hook.patch
 Patch17: gcc44-pr38757.patch
 Patch18: gcc44-libstdc++-docs.patch
 Patch19: gcc44-ppc64-aixdesc.patch
+Patch20: gcc44-vta-rh521991.patch
 
 Patch1000: fastjar-0.97-segfault.patch
 
@@ -466,6 +467,7 @@ which are required to compile with the GNAT.
 %patch18 -p0 -b .libstdc++-docs~
 %endif
 %patch19 -p0 -b .ppc64-aixdesc~
+%patch20 -p0 -b .vta-rh521991~
 
 # This testcase doesn't compile.
 rm libjava/testsuite/libjava.lang/PR35020*
@@ -1185,55 +1187,65 @@ rm -rf testlogs-%{_target_platform}-%{version}-%{release}
 rm -rf %{buildroot}
 
 %post
-/sbin/install-info \
-  --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || :
+if [ -f %{_infodir}/gcc.info.gz ]; then
+  /sbin/install-info \
+    --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || :
+fi
 
 %preun
-if [ $1 = 0 ]; then
+if [ $1 = 0 -a -f %{_infodir}/gcc.info.gz ]; then
   /sbin/install-info --delete \
     --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || :
 fi
 
 %post -n cpp
-/sbin/install-info \
-  --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || :
+if [ -f %{_infodir}/cpp.info.gz ]; then
+  /sbin/install-info \
+    --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || :
+fi
 
 %preun -n cpp
-if [ $1 = 0 ]; then
+if [ $1 = 0 -a -f %{_infodir}/cpp.info.gz ]; then
   /sbin/install-info --delete \
     --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || :
 fi
 
 %post gfortran
-/sbin/install-info \
-  --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || :
+if [ -f %{_infodir}/gfortran.info.gz ]; then
+  /sbin/install-info \
+    --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || :
+fi
 
 %preun gfortran
-if [ $1 = 0 ]; then
+if [ $1 = 0 -a -f %{_infodir}/gfortran.info.gz ]; then
   /sbin/install-info --delete \
     --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || :
 fi
 
 %post java
+if [ -f %{_infodir}/gcj.info.gz ]; then
 /sbin/install-info \
   --info-dir=%{_infodir} %{_infodir}/gcj.info.gz || :
+fi
 
 %preun java
-if [ $1 = 0 ]; then
+if [ $1 = 0 -a -f %{_infodir}/gcj.info.gz ]; then
   /sbin/install-info --delete \
     --info-dir=%{_infodir} %{_infodir}/gcj.info.gz || :
 fi
 
 %post gnat
-/sbin/install-info \
-  --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || :
-/sbin/install-info \
-  --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || :
-/sbin/install-info \
-  --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || :
+if [ -f %{_infodir}/gnat_rm.info.gz ]; then
+  /sbin/install-info \
+    --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || :
+  /sbin/install-info \
+    --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || :
+  /sbin/install-info \
+    --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || :
+fi
 
 %preun gnat
-if [ $1 = 0 ]; then
+if [ $1 = 0 -a -f %{_infodir}/gnat_rm.info.gz ]; then
   /sbin/install-info --delete \
     --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || :
   /sbin/install-info --delete \
@@ -1257,13 +1269,15 @@ fi
 
 %post -n libgcj
 /sbin/ldconfig
-/sbin/install-info \
-  --info-dir=%{_infodir} %{_infodir}/cp-tools.info.gz || :
-/sbin/install-info \
-  --info-dir=%{_infodir} %{_infodir}/fastjar.info.gz || :
+if [ -f %{_infodir}/cp-tools.info.gz ]; then
+  /sbin/install-info \
+    --info-dir=%{_infodir} %{_infodir}/cp-tools.info.gz || :
+  /sbin/install-info \
+    --info-dir=%{_infodir} %{_infodir}/fastjar.info.gz || :
+fi
 
 %preun -n libgcj
-if [ $1 = 0 ]; then
+if [ $1 = 0 -a -f %{_infodir}/cp-tools.info.gz ]; then
   /sbin/install-info --delete \
     --info-dir=%{_infodir} %{_infodir}/cp-tools.info.gz || :
   /sbin/install-info --delete \
@@ -1282,11 +1296,13 @@ fi
 
 %post -n libgomp
 /sbin/ldconfig
-/sbin/install-info \
-  --info-dir=%{_infodir} %{_infodir}/libgomp.info.gz || :
+if [ -f %{_infodir}/libgomp.info.gz ]; then
+  /sbin/install-info \
+    --info-dir=%{_infodir} %{_infodir}/libgomp.info.gz || :
+fi
 
 %preun -n libgomp
-if [ $1 = 0 ]; then
+if [ $1 = 0 -a -f %{_infodir}/libgomp.info.gz ]; then
   /sbin/install-info --delete \
     --info-dir=%{_infodir} %{_infodir}/libgomp.info.gz || :
 fi
@@ -1354,7 +1370,7 @@ fi
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/immintrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/avxintrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/x86intrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/mmintrin-common.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/fma4intrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/mm_malloc.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/mm3dnow.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/cpuid.h
@@ -1821,6 +1837,16 @@ fi
 %doc rpm.doc/changelogs/libmudflap/ChangeLog*
 
 %changelog
+* Thu Oct  1 2009 Jakub Jelinek <jakub@redhat.com> 4.4.1-18
+- update from gcc-4_4-branch
+  - PRs ada/41100, target/22093
+- VTA backports
+  - PRs debug/41438, debug/41474, target/41279, testsuite/41444
+- fix VTA ICE on Linux kernel (#521991)
+- AMD Orochi -mfma4 support
+- don't run install-info if info files are missing because of --excludedocs
+  (#515921, #515960, #515962, #515965, #516000, #516008, #516014)
+
 * Fri Sep 25 2009 Jakub Jelinek <jakub@redhat.com> 4.4.1-17
 - update from gcc-4_4-branch
   - fix vectorizer for power7 (#463846)

diff --git a/gcc44-vta-rh521991.patch b/gcc44-vta-rh521991.patch
new file mode 100644
index 0000000..c126ad1
--- /dev/null
+++ b/gcc44-vta-rh521991.patch
@@ -0,0 +1,181 @@
+2009-09-30  Alexandre Oliva  <aoliva@redhat.com>
+
+	* tree-dfa.c (referenced_var_p): New.
+	(remove_referenced_var): Clear renaming mark.
+	* tree-flow.h (referenced_var_p): Declare.
+	(sym_marked_for_renaming, clear_mark_for_renaming): Declare.
+	* tree-into-ssa.c (clear_mark_for_renaming): New.
+	(sym_marked_for_renaming): New.
+	* tree-ssa-operands.c (pop_stmt_changes): Reset debug stmts
+	that reference otherwise-unreferenced variables.
+
+	* gcc.dg/debug/vta-1.c: New.
+
+--- gcc/tree-dfa.c.orig	2009-09-30 04:00:45.000000000 -0300
++++ gcc/tree-dfa.c	2009-09-30 04:01:21.000000000 -0300
+@@ -639,6 +639,23 @@ set_default_def (tree var, tree def)
+    SSA_NAME_IS_DEFAULT_DEF (def) = true;
+ }
+ 
++/* Return TRUE if VAR is in the set of referenced variables.  */
++
++bool
++referenced_var_p (tree var)
++{
++  struct tree_decl_minimal in;
++
++  gcc_assert (DECL_P (var));
++
++  if (!gimple_referenced_vars (cfun))
++    return false;
++
++  in.uid = DECL_UID (var);
++  return htab_find_with_hash (gimple_referenced_vars (cfun), &in, in.uid)
++    != NULL;
++}
++
+ /* Add VAR to the list of referenced variables if it isn't already there.  */
+ 
+ bool
+@@ -686,6 +703,15 @@ remove_referenced_var (tree var)
+   void **loc;
+   unsigned int uid = DECL_UID (var);
+ 
++  /* Symbols that decayed from addressable to gimple registers, but
++     that are referenced only in debug stmts, may be marked for
++     renaming, but renaming them would fail once they're no longer
++     referenced.  Let them rest in peace.  */
++  if (TREE_CODE (var) != SSA_NAME
++      && is_gimple_reg (var)
++      && sym_marked_for_renaming (var))
++    clear_mark_for_renaming (var);
++
+   clear_call_clobbered (var);
+   bitmap_clear_bit (gimple_call_used_vars (cfun), uid);
+   if ((v_ann = var_ann (var)))
+--- gcc/tree-flow.h.orig	2009-09-30 04:00:46.000000000 -0300
++++ gcc/tree-flow.h	2009-09-30 04:01:21.000000000 -0300
+@@ -773,6 +773,7 @@ extern void dump_referenced_vars (FILE *
+ extern void dump_variable (FILE *, tree);
+ extern void debug_variable (tree);
+ extern tree get_virtual_var (tree);
++extern bool referenced_var_p (tree);
+ extern bool add_referenced_var (tree);
+ extern void remove_referenced_var (tree);
+ extern void mark_symbols_for_renaming (gimple);
+@@ -889,7 +890,9 @@ bool name_registered_for_update_p (tree)
+ bitmap ssa_names_to_replace (void);
+ void release_ssa_name_after_update_ssa (tree);
+ void compute_global_livein (bitmap, bitmap);
++bool sym_marked_for_renaming (tree);
+ void mark_sym_for_renaming (tree);
++void clear_mark_for_renaming (tree);
+ void mark_set_for_renaming (bitmap);
+ tree get_current_def (tree);
+ void set_current_def (tree, tree);
+--- gcc/tree-into-ssa.c.orig	2009-09-30 04:00:45.000000000 -0300
++++ gcc/tree-into-ssa.c	2009-09-30 04:01:21.000000000 -0300
+@@ -2874,6 +2874,37 @@ mark_sym_for_renaming (tree sym)
+     }
+ }
+ 
++/* Unregister symbol SYM to be renamed by update_ssa.  SYM must be a
++   gimple register.  */
++
++void
++clear_mark_for_renaming (tree sym)
++{
++  if (need_to_initialize_update_ssa_p)
++    return;
++
++  gcc_assert (is_gimple_reg (sym));
++
++  bitmap_clear_bit (syms_to_rename, DECL_UID (sym));
++
++  if (bitmap_empty_p (syms_to_rename))
++    BITMAP_FREE (syms_to_rename);
++}
++
++/* Return true if a symbol is marked for renaming.  This is an
++   exported interface for symbol_marked_for_renaming.  */
++
++bool
++sym_marked_for_renaming (tree sym)
++{
++  if (need_to_initialize_update_ssa_p)
++    return false;
++
++  if (!syms_to_rename)
++    return false;
++
++  return symbol_marked_for_renaming (sym);
++}
+ 
+ /* Register all the symbols in SET to be renamed by update_ssa.  */
+ 
+--- gcc/tree-ssa-operands.c.orig	2009-09-30 04:00:45.000000000 -0300
++++ gcc/tree-ssa-operands.c	2009-09-30 04:01:21.000000000 -0300
+@@ -2716,9 +2716,22 @@ pop_stmt_changes (gimple *stmt_p)
+   mark_difference_for_renaming (stores, buf->stores);
+ 
+   /* Mark all the naked GIMPLE register operands for renaming.  */
+-  FOR_EACH_SSA_TREE_OPERAND (op, stmt, iter, SSA_OP_DEF|SSA_OP_USE)
+-    if (DECL_P (op))
+-      mark_sym_for_renaming (op);
++  if (gimple_debug_bind_p (stmt))
++    {
++      FOR_EACH_SSA_TREE_OPERAND (op, stmt, iter, SSA_OP_DEF|SSA_OP_USE)
++	if (DECL_P (op) && !referenced_var_p (op))
++	  {
++	    gimple_debug_bind_reset_value (stmt);
++	    update_stmt (stmt);
++	    break;
++	  }
++    }
++  else
++    {
++      FOR_EACH_SSA_TREE_OPERAND (op, stmt, iter, SSA_OP_DEF|SSA_OP_USE)
++	if (DECL_P (op))
++	  mark_sym_for_renaming (op);
++    }
+ 
+   /* FIXME, need to add more finalizers here.  Cleanup EH info,
+      recompute invariants for address expressions, add
+--- gcc/testsuite/gcc.dg/debug/vta-1.c	1970-01-01 00:00:00.000000000 +0000
++++ gcc/testsuite/gcc.dg/debug/vta-1.c	2009-09-30 04:01:21.000000000 -0300
+@@ -0,0 +1,35 @@
++/* https://bugzilla.redhat.com/show_bug.cgi?id=521991#c5
++
++   Distilled from Linux XFS source code.  foo, inlined into bar, ends
++   up with debug stmts referencing the addressable variable b.
++   Optimization made it non-addressable, and then completely optimized
++   away, before we got a chance to rename (and discard) the occurrence
++   in the debug stmt.  When we did, we crashed, attempting to rename
++   an unreference variable.  */
++
++/* { dg-do compile } */
++/* { dg-options "-O2 -g" } */
++
++static inline int
++foo (void *x, unsigned y)
++{
++  unsigned z = *(unsigned long *) x % y;
++  *(unsigned long *) x = *(unsigned long *) x / y;
++  return z;
++}
++
++struct S
++{
++  unsigned t;
++};
++
++void
++bar (struct S *x, int *y)
++{
++  int a = 0;
++  unsigned long b = x->t;
++  foo (&b, x->t);
++  for (;; a++)
++    if (b)
++      *y = 1;
++}

diff --git a/sources b/sources
index 8ee9c77..82ebc5e 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
 2659f09c2e43ef8b7d4406321753f1b2  fastjar-0.97.tar.gz
-fe01be0d467f7de14e7e8e169e52cf72  gcc-4.4.1-20090925.tar.bz2
+18fe22db9e055b13b9cc290f6cbbf1fa  gcc-4.4.1-20091001.tar.bz2

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

only message in thread, other threads:[~2026-06-29 12:24 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:24 [rpms/gcc] rhel-f41-base: 4.4.1-18 Jakub Jelinek

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