4.4.3-13
This commit is contained in:
parent
1d0a646cc5
commit
0a5caf80d3
@ -1,2 +1,2 @@
|
||||
fastjar-0.97.tar.gz
|
||||
gcc-4.4.3-20100211.tar.bz2
|
||||
gcc-4.4.3-20100327.tar.bz2
|
||||
|
80
gcc.spec
80
gcc.spec
@ -1,12 +1,12 @@
|
||||
%global DATE 20100211
|
||||
%global SVNREV 156726
|
||||
%global DATE 20100327
|
||||
%global SVNREV 157778
|
||||
%global gcc_version 4.4.3
|
||||
# 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 6
|
||||
%global gcc_release 13
|
||||
%global _unpackaged_files_terminate_build 0
|
||||
%global multilib_64_archs sparc64 ppc64 s390x x86_64
|
||||
%if 0%{?fedora} >= 13
|
||||
%if 0%{?fedora} >= 13 || 0%{?rhel} >= 6
|
||||
%global include_gappletviewer 0
|
||||
%else
|
||||
%global include_gappletviewer 1
|
||||
@ -175,8 +175,7 @@ Patch16: gcc44-unwind-debug-hook.patch
|
||||
Patch17: gcc44-pr38757.patch
|
||||
Patch18: gcc44-libstdc++-docs.patch
|
||||
Patch19: gcc44-ppc64-aixdesc.patch
|
||||
Patch20: gcc44-max-vartrack-size.patch
|
||||
Patch21: gcc44-no-add-needed.patch
|
||||
Patch20: gcc44-no-add-needed.patch
|
||||
|
||||
Patch1000: fastjar-0.97-segfault.patch
|
||||
Patch1001: fastjar-0.97-len1.patch
|
||||
@ -485,9 +484,8 @@ which are required to compile with the GNAT.
|
||||
%patch18 -p0 -b .libstdc++-docs~
|
||||
%endif
|
||||
%patch19 -p0 -b .ppc64-aixdesc~
|
||||
%patch20 -p0 -b .max-vartrack-size~
|
||||
%if 0%{?fedora} >= 13
|
||||
%patch21 -p0 -b .no-add-needed~
|
||||
%patch20 -p0 -b .no-add-needed~
|
||||
%endif
|
||||
|
||||
# This testcase doesn't compile.
|
||||
@ -686,7 +684,7 @@ CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="`echo $OPT_FLAGS | sed 's/ -Wall / /g'`"
|
||||
--with-arch_32=i686 \
|
||||
%endif
|
||||
%ifarch s390 s390x
|
||||
--with-arch=z9-109 --with-tune=z10 \
|
||||
--with-arch=z9-109 --with-tune=z10 --enable-decimal-float \
|
||||
%endif
|
||||
%ifnarch sparc sparcv9 ppc
|
||||
--build=%{gcc_target_platform}
|
||||
@ -1878,6 +1876,70 @@ fi
|
||||
%doc rpm.doc/changelogs/libmudflap/ChangeLog*
|
||||
|
||||
%changelog
|
||||
* Sat Mar 27 2010 Jakub Jelinek <jakub@redhat.com> 4.4.3-13
|
||||
- update from gcc-4_4-branch
|
||||
- PRs c/43381, libfortran/43517, target/42113
|
||||
- VTA backports
|
||||
- PRs debug/43516, debug/43540
|
||||
|
||||
* Thu Mar 25 2010 Jakub Jelinek <jakub@redhat.com> 4.4.3-12
|
||||
- update from gcc-4_4-branch
|
||||
- PRs c/43385, target/43348, tree-optimization/43415
|
||||
- VTA backports
|
||||
- PRs bootstrap/43511, debug/19192, debug/43479, debug/43508
|
||||
- provide unwind info even for C++ thunks on x86, x86-64 and s390{,x}
|
||||
(PR target/43498)
|
||||
- provide unwind info for x86 PIC thunks even when not using CFI assembler
|
||||
directives (PR debug/43293)
|
||||
|
||||
* Mon Mar 22 2010 Jakub Jelinek <jakub@redhat.com> 4.4.3-11
|
||||
- update from gcc-4_4-branch
|
||||
- PRs c++/43116, libfortran/43265, libgomp/42942, middle-end/42718,
|
||||
middle-end/43419, rtl-optimization/43360, rtl-optimization/43438,
|
||||
target/43305, target/43417
|
||||
- VTA backports
|
||||
- PRs bootstrap/43399, bootstrap/43403, debug/42873, debug/43058,
|
||||
debug/43443, target/43399
|
||||
|
||||
* Tue Mar 16 2010 Jakub Jelinek <jakub@redhat.com> 4.4.3-10
|
||||
- update from gcc-4_4-branch
|
||||
- PRs fortran/43228, fortran/43303, libfortran/43265, libfortran/43320
|
||||
- VTA backports
|
||||
- PRs debug/36728, debug/43051, debug/43092, debug/43290,
|
||||
tree-optimization/42917, tree-optimization/43317
|
||||
- fix non-localized vars handling and forwarder block merging
|
||||
(#572260, PR debug/43329)
|
||||
%if 0%{?rhel} >= 6
|
||||
- remove gappletviewer, gcjwebplugin and related files even for
|
||||
RHEL, as xulrunner got updated to 1.9.2.1
|
||||
%endif
|
||||
|
||||
* Tue Mar 9 2010 Jakub Jelinek <jakub@redhat.com> 4.4.3-9
|
||||
- update from gcc-4_4-branch
|
||||
- PRs ada/42253, bootstrap/43121, c/43248, tree-optimization/43220
|
||||
- VTA backports
|
||||
- PRs debug/42897, debug/43176, debug/43177, debug/43229, debug/43237,
|
||||
debug/43290, debug/43299, debug/43304
|
||||
- fix unwind info in i?86 PIC register setup sequences (PR debug/43293)
|
||||
|
||||
* Fri Feb 26 2010 Jakub Jelinek <jakub@redhat.com> 4.4.3-8
|
||||
- update from gcc-4_4-branch
|
||||
- PR libstdc++/21769
|
||||
- VTA backports
|
||||
- PRs debug/42800, debug/43077, debug/43150, debug/43160, debug/43161,
|
||||
debug/43165, debug/43166, debug/43190, target/43139
|
||||
- fix alignment of some stack vars (PR middle-end/39315)
|
||||
|
||||
* Sun Feb 21 2010 Jakub Jelinek <jakub@redhat.com> 4.4.3-7
|
||||
- update from gcc-4_4-branch
|
||||
- PRs c++/43024, c++/43033, fortran/41869, target/40887,
|
||||
tree-optimization/42871, tree-optimization/43074
|
||||
- VTA backports (PRs debug/42918, debug/43084)
|
||||
- --enable-decimal-float on s390{,x} (#565871)
|
||||
- improve __builtin_expect handling, propagate branch probabilities
|
||||
during expansion even for sequences with more than one jump
|
||||
(PR middle-end/42233)
|
||||
|
||||
* Thu Feb 11 2010 Jakub Jelinek <jakub@redhat.com> 4.4.3-6
|
||||
- update from gcc-4_4-branch
|
||||
- PR tree-optimization/42705
|
||||
|
@ -1,229 +0,0 @@
|
||||
2010-01-05 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* params.def (PARAM_MAX_VARTRACK_SIZE): New.
|
||||
* doc/invoke.texi: Document it.
|
||||
* var-tracking.c: Include toplev.h and params.h.
|
||||
(vt_find_locations): Return bool indicating success. Compute
|
||||
hash sizes unconditionally. Check new parameter, report.
|
||||
(variable_tracking_main_1): Check vt_find_locations results and
|
||||
retry. Renamed from...
|
||||
(variable_tracking_main): ... this. New wrapper to preserve
|
||||
flag_var_tracking_assignments.
|
||||
* Makefile.in (var-tracking.o): Adjust dependencies.
|
||||
|
||||
--- gcc/doc/invoke.texi.jj 2010-01-09 20:39:58.000000000 +0100
|
||||
+++ gcc/doc/invoke.texi 2010-01-21 10:00:15.979730377 +0100
|
||||
@@ -7937,6 +7937,15 @@ with more basic blocks than this paramet
|
||||
motion optimization performed on them. The default value of the
|
||||
parameter is 1000 for -O1 and 10000 for -O2 and above.
|
||||
|
||||
+@item max-vartrack-size
|
||||
+Sets a maximum number of hash table slots to use during variable
|
||||
+tracking dataflow analysis of any function. If this limit is exceeded
|
||||
+with variable tracking at assignments enabled, analysis for that
|
||||
+function is retried without it, after removing all debug insns from
|
||||
+the function. If the limit is exceeded even without debug insns, var
|
||||
+tracking analysis is completely disabled for the function. Setting
|
||||
+the parameter to zero makes it unlimited.
|
||||
+
|
||||
@item min-nondebug-insn-uid
|
||||
Use uids starting at this parameter for nondebug insns. The range below
|
||||
the parameter is reserved exclusively for debug insns created by
|
||||
--- gcc/params.def.jj 2010-01-09 20:39:58.000000000 +0100
|
||||
+++ gcc/params.def 2010-01-21 10:00:15.980730943 +0100
|
||||
@@ -771,6 +771,13 @@ DEFPARAM (PARAM_LOOP_INVARIANT_MAX_BBS_I
|
||||
"max basic blocks number in loop for loop invariant motion",
|
||||
10000, 0, 0)
|
||||
|
||||
+/* Set maximum hash table size for var tracking. */
|
||||
+
|
||||
+DEFPARAM (PARAM_MAX_VARTRACK_SIZE,
|
||||
+ "max-vartrack-size",
|
||||
+ "Max. size of var tracking hash tables",
|
||||
+ 50000000, 0, 0)
|
||||
+
|
||||
/* Set minimum insn uid for non-debug insns. */
|
||||
|
||||
DEFPARAM (PARAM_MIN_NONDEBUG_INSN_UID,
|
||||
--- gcc/var-tracking.c.jj 2010-01-21 09:10:37.000000000 +0100
|
||||
+++ gcc/var-tracking.c 2010-01-21 10:00:15.983740989 +0100
|
||||
@@ -109,6 +109,8 @@
|
||||
#include "tree-flow.h"
|
||||
#include "cselib.h"
|
||||
#include "target.h"
|
||||
+#include "toplev.h"
|
||||
+#include "params.h"
|
||||
|
||||
/* var-tracking.c assumes that tree code with the same value as VALUE rtx code
|
||||
has no chance to appear in REG_EXPR/MEM_EXPRs and isn't a decl.
|
||||
@@ -451,7 +453,7 @@ static int add_uses (rtx *, void *);
|
||||
static void add_uses_1 (rtx *, void *);
|
||||
static void add_stores (rtx, const_rtx, void *);
|
||||
static bool compute_bb_dataflow (basic_block);
|
||||
-static void vt_find_locations (void);
|
||||
+static bool vt_find_locations (void);
|
||||
|
||||
static void dump_attrs_list (attrs);
|
||||
static int dump_var_slot (void **, void *);
|
||||
@@ -5511,7 +5513,7 @@ compute_bb_dataflow (basic_block bb)
|
||||
|
||||
/* Find the locations of variables in the whole function. */
|
||||
|
||||
-static void
|
||||
+static bool
|
||||
vt_find_locations (void)
|
||||
{
|
||||
fibheap_t worklist, pending, fibheap_swap;
|
||||
@@ -5522,6 +5524,8 @@ vt_find_locations (void)
|
||||
int *rc_order;
|
||||
int i;
|
||||
int htabsz = 0;
|
||||
+ int htabmax = PARAM_VALUE (PARAM_MAX_VARTRACK_SIZE);
|
||||
+ bool success = true;
|
||||
|
||||
/* Compute reverse completion order of depth first search of the CFG
|
||||
so that the data-flow runs faster. */
|
||||
@@ -5543,7 +5547,7 @@ vt_find_locations (void)
|
||||
fibheap_insert (pending, bb_order[bb->index], bb);
|
||||
sbitmap_ones (in_pending);
|
||||
|
||||
- while (!fibheap_empty (pending))
|
||||
+ while (success && !fibheap_empty (pending))
|
||||
{
|
||||
fibheap_swap = pending;
|
||||
pending = worklist;
|
||||
@@ -5566,11 +5570,11 @@ vt_find_locations (void)
|
||||
|
||||
SET_BIT (visited, bb->index);
|
||||
|
||||
- if (dump_file && VTI (bb)->in.vars)
|
||||
+ if (VTI (bb)->in.vars)
|
||||
{
|
||||
htabsz
|
||||
- -= htab_size (shared_hash_htab (VTI (bb)->in.vars))
|
||||
- + htab_size (shared_hash_htab (VTI (bb)->out.vars));
|
||||
+ -= (htab_size (shared_hash_htab (VTI (bb)->in.vars))
|
||||
+ + htab_size (shared_hash_htab (VTI (bb)->out.vars)));
|
||||
oldinsz
|
||||
= htab_elements (shared_hash_htab (VTI (bb)->in.vars));
|
||||
oldoutsz
|
||||
@@ -5634,9 +5638,20 @@ vt_find_locations (void)
|
||||
}
|
||||
|
||||
changed = compute_bb_dataflow (bb);
|
||||
- if (dump_file)
|
||||
- htabsz += htab_size (shared_hash_htab (VTI (bb)->in.vars))
|
||||
- + htab_size (shared_hash_htab (VTI (bb)->out.vars));
|
||||
+ htabsz += (htab_size (shared_hash_htab (VTI (bb)->in.vars))
|
||||
+ + htab_size (shared_hash_htab (VTI (bb)->out.vars)));
|
||||
+
|
||||
+ if (htabmax && htabsz > htabmax)
|
||||
+ {
|
||||
+ if (MAY_HAVE_DEBUG_INSNS)
|
||||
+ inform (DECL_SOURCE_LOCATION (cfun->decl),
|
||||
+ "variable tracking size limit exceeded with debug insns, retrying without");
|
||||
+ else
|
||||
+ inform (DECL_SOURCE_LOCATION (cfun->decl),
|
||||
+ "variable tracking size limit exceeded");
|
||||
+ success = false;
|
||||
+ break;
|
||||
+ }
|
||||
|
||||
if (changed)
|
||||
{
|
||||
@@ -5687,7 +5702,7 @@ vt_find_locations (void)
|
||||
}
|
||||
}
|
||||
|
||||
- if (MAY_HAVE_DEBUG_INSNS)
|
||||
+ if (success && MAY_HAVE_DEBUG_INSNS)
|
||||
FOR_EACH_BB (bb)
|
||||
gcc_assert (VTI (bb)->flooded);
|
||||
|
||||
@@ -5698,6 +5713,8 @@ vt_find_locations (void)
|
||||
sbitmap_free (visited);
|
||||
sbitmap_free (in_worklist);
|
||||
sbitmap_free (in_pending);
|
||||
+
|
||||
+ return success;
|
||||
}
|
||||
|
||||
/* Print the content of the LIST to dump file. */
|
||||
@@ -7600,9 +7617,11 @@ vt_finalize (void)
|
||||
|
||||
/* The entry point to variable tracking pass. */
|
||||
|
||||
-unsigned int
|
||||
-variable_tracking_main (void)
|
||||
+static inline unsigned int
|
||||
+variable_tracking_main_1 (void)
|
||||
{
|
||||
+ bool success;
|
||||
+
|
||||
if (flag_var_tracking_assignments < 0)
|
||||
{
|
||||
delete_debug_insns ();
|
||||
@@ -7627,7 +7646,31 @@ variable_tracking_main (void)
|
||||
}
|
||||
}
|
||||
|
||||
- vt_find_locations ();
|
||||
+ success = vt_find_locations ();
|
||||
+
|
||||
+ if (!success && flag_var_tracking_assignments > 0)
|
||||
+ {
|
||||
+ vt_finalize ();
|
||||
+
|
||||
+ delete_debug_insns ();
|
||||
+
|
||||
+ /* This is later restored by our caller. */
|
||||
+ flag_var_tracking_assignments = 0;
|
||||
+
|
||||
+ vt_initialize ();
|
||||
+
|
||||
+ if (!frame_pointer_needed && !vt_stack_adjustments ())
|
||||
+ gcc_unreachable ();
|
||||
+
|
||||
+ success = vt_find_locations ();
|
||||
+ }
|
||||
+
|
||||
+ if (!success)
|
||||
+ {
|
||||
+ vt_finalize ();
|
||||
+ vt_debug_insns_local (false);
|
||||
+ return 0;
|
||||
+ }
|
||||
|
||||
if (dump_file && (dump_flags & TDF_DETAILS))
|
||||
{
|
||||
@@ -7641,6 +7684,19 @@ variable_tracking_main (void)
|
||||
vt_debug_insns_local (false);
|
||||
return 0;
|
||||
}
|
||||
+
|
||||
+unsigned int
|
||||
+variable_tracking_main (void)
|
||||
+{
|
||||
+ unsigned int ret;
|
||||
+ int save = flag_var_tracking_assignments;
|
||||
+
|
||||
+ ret = variable_tracking_main_1 ();
|
||||
+
|
||||
+ flag_var_tracking_assignments = save;
|
||||
+
|
||||
+ return ret;
|
||||
+}
|
||||
|
||||
static bool
|
||||
gate_handle_var_tracking (void)
|
||||
--- gcc/Makefile.in.jj 2010-01-21 08:58:12.000000000 +0100
|
||||
+++ gcc/Makefile.in 2010-01-21 10:00:45.555730868 +0100
|
||||
@@ -2751,7 +2751,7 @@ var-tracking.o : var-tracking.c $(CONFIG
|
||||
$(RTL_H) $(TREE_H) hard-reg-set.h insn-config.h reload.h $(FLAGS_H) \
|
||||
$(BASIC_BLOCK_H) output.h sbitmap.h alloc-pool.h $(FIBHEAP_H) $(HASHTAB_H) \
|
||||
$(REGS_H) $(EXPR_H) $(TIMEVAR_H) tree-pass.h cselib.h $(TARGET_H) \
|
||||
- $(TREE_FLOW_H)
|
||||
+ $(TREE_FLOW_H) $(TOPLEV_H) $(PARAMS_H)
|
||||
profile.o : profile.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
|
||||
$(TREE_H) $(FLAGS_H) output.h $(REGS_H) $(EXPR_H) $(FUNCTION_H) \
|
||||
$(TOPLEV_H) $(COVERAGE_H) $(TREE_FLOW_H) value-prof.h cfghooks.h \
|
@ -6,7 +6,7 @@
|
||||
;;
|
||||
-sparc-*-linux*) # SPARC's running GNU/Linux, libc6
|
||||
+sparc-*-linux* | sparcv9*-*-linux*) # SPARC's running GNU/Linux, libc6
|
||||
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h linux.h"
|
||||
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/gas.h linux.h"
|
||||
extra_options="${extra_options} sparc/long-double-switch.opt"
|
||||
tmake_file="${tmake_file} sparc/t-linux"
|
||||
@@ -2287,7 +2287,7 @@ sparc64-*-freebsd*|ultrasparc-*-freebsd*
|
||||
@ -15,7 +15,7 @@
|
||||
;;
|
||||
-sparc64-*-linux*) # 64-bit SPARC's running GNU/Linux
|
||||
+sparc64*-*-linux*) # 64-bit SPARC's running GNU/Linux
|
||||
tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h linux.h sparc/linux64.h"
|
||||
tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/gas.h linux.h sparc/linux64.h"
|
||||
extra_options="${extra_options} sparc/long-double-switch.opt"
|
||||
tmake_file="${tmake_file} sparc/t-linux sparc/t-linux64 sparc/t-crtfm"
|
||||
--- libgcc/config.host.jj 2008-04-24 15:46:19.000000000 -0500
|
||||
|
@ -7,3 +7,4 @@ gcc-4_4_3-1_fc13:HEAD:gcc-4.4.3-1.fc13.src.rpm:1264094717
|
||||
gcc-4_4_3-4_fc13:HEAD:gcc-4.4.3-4.fc13.src.rpm:1264621537
|
||||
gcc-4_4_3-5_fc13:HEAD:gcc-4.4.3-5.fc13.src.rpm:1265659730
|
||||
gcc-4_4_3-6_fc13:HEAD:gcc-4.4.3-6.fc13.src.rpm:1265925505
|
||||
gcc-4_4_3-13_fc14:HEAD:gcc-4.4.3-13.fc14.src.rpm:1269701430
|
||||
|
Loading…
Reference in New Issue
Block a user