This commit is contained in:
Jakub Jelinek 2009-10-15 18:53:25 +00:00
parent a1aa91bff1
commit e31e9a02d7
5 changed files with 162 additions and 42 deletions

View File

@ -1,2 +1,2 @@
fastjar-0.97.tar.gz
gcc-4.4.1-20091014.tar.bz2
gcc-4.4.2-20091015.tar.bz2

View File

@ -1,9 +1,9 @@
%global DATE 20091014
%global SVNREV 152775
%global gcc_version 4.4.1
%global DATE 20091015
%global SVNREV 152859
%global gcc_version 4.4.2
# 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 22
%global gcc_release 1
%global _unpackaged_files_terminate_build 0
%global multilib_64_archs sparc64 ppc64 s390x x86_64
%global include_gappletviewer 1
@ -65,7 +65,8 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# Need binutils which support mffgpr and mftgpr >= 2.17.50.0.2-8
# Need binutils which support --build-id >= 2.17.50.0.17-3
# Need binutils which support %gnu_unique_object >= 2.19.51.0.14
BuildRequires: binutils >= 2.19.51.0.14
# Need binutils which support .cfi_sections >= 2.19.51.0.14-33
BuildRequires: binutils >= 2.19.51.0.14-33
# While gcc doesn't include statically linked binaries, during testing
# -static is used several times.
BuildRequires: glibc-static
@ -118,8 +119,9 @@ Requires: cpp = %{version}-%{release}
# Need binutils that supports --hash-style=gnu
# Need binutils that support mffgpr/mftgpr
# Need binutils that support --build-id
# Need binutils which support %gnu_unique_object
Requires: binutils >= 2.19.51.0.14
# Need binutils that support %gnu_unique_object
# Need binutils that support .cfi_sections
Requires: binutils >= 2.19.51.0.14-33
# Make sure gdb will understand DW_FORM_strp
Conflicts: gdb < 5.1-2
Requires: glibc-devel >= 2.2.90-12
@ -160,7 +162,7 @@ Patch16: gcc44-unwind-debug-hook.patch
Patch17: gcc44-pr38757.patch
Patch18: gcc44-libstdc++-docs.patch
Patch19: gcc44-ppc64-aixdesc.patch
Patch20: gcc44-powerpc-with-tune.patch
Patch20: gcc44-pr40521.patch
Patch21: gcc44-unwind-leltgegt.patch
Patch1000: fastjar-0.97-segfault.patch
@ -468,7 +470,7 @@ which are required to compile with the GNAT.
%patch18 -p0 -b .libstdc++-docs~
%endif
%patch19 -p0 -b .ppc64-aixdesc~
%patch20 -p0 -b .powerpc-with-tune~
%patch20 -p0 -b .pr40521~
%patch21 -p0 -b .unwind-leltgegt~
# This testcase doesn't compile.
@ -482,7 +484,7 @@ tar xzf %{SOURCE4}
tar xjf %{SOURCE10}
%endif
sed -i -e 's/4\.4\.2/4.4.1/' gcc/BASE-VER
sed -i -e 's/4\.4\.3/4.4.2/' gcc/BASE-VER
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
# Default to -gdwarf-3 rather than -gdwarf-2
@ -1844,6 +1846,15 @@ fi
%doc rpm.doc/changelogs/libmudflap/ChangeLog*
%changelog
* Thu Oct 15 2009 Jakub Jelinek <jakub@redhat.com> 4.4.2-1
- update from gcc-4_4-branch
- GCC 4.4.2 release
- PRs middle-end/22072, target/41665
- don't emit -Wpadded warnings for builtin structures
- don't generate .eh_frame, but generate .debug_frame when -g and none of
-fasynchronous-unwind-tables/-fexceptions/-funwind-tables is used
(PR debug/40521)
* Wed Oct 14 2009 Jakub Jelinek <jakub@redhat.com> 4.4.1-22
- update from gcc-4_4-branch
- PRs target/26515, target/38948

View File

@ -1,30 +0,0 @@
2009-10-14 Jakub Jelinek <jakub@redhat.com>
* config/rs6000/option-defaults.h (OPTION_DEFAULT_SPECS): Don't
add --with-tune{,-32,-64} configured default for -mtune if explicit
-mcpu is used.
--- gcc/config/rs6000/option-defaults.h.jj 2009-06-02 18:36:50.000000000 +0200
+++ gcc/config/rs6000/option-defaults.h 2009-10-14 18:28:50.134723716 +0200
@@ -50,15 +50,15 @@
/* Support for a compile-time default CPU, et cetera. The rules are:
--with-cpu is ignored if -mcpu is specified; likewise --with-cpu-32
and --with-cpu-64.
- --with-tune is ignored if -mtune is specified; likewise --with-tune-32
- and --with-tune-64.
+ --with-tune is ignored if -mtune or -mcpu is specified; likewise
+ --with-tune-32 and --with-tune-64.
--with-float is ignored if -mhard-float or -msoft-float are
- specified. */
+ specified. */
#define OPTION_DEFAULT_SPECS \
+ {"tune", "%{!mtune=*:%{!mcpu=*:-mtune=%(VALUE)}}" }, \
+ {"tune_32", "%{" OPT_ARCH32 ":%{!mtune=*:%{!mcpu=*:-mtune=%(VALUE)}}}" }, \
+ {"tune_64", "%{" OPT_ARCH64 ":%{!mtune=*:%{!mcpu=*:-mtune=%(VALUE)}}}" }, \
{"cpu", "%{!mcpu=*:-mcpu=%(VALUE)}" }, \
{"cpu_32", "%{" OPT_ARCH32 ":%{!mcpu=*:-mcpu=%(VALUE)}}" }, \
{"cpu_64", "%{" OPT_ARCH64 ":%{!mcpu=*:-mcpu=%(VALUE)}}" }, \
- {"tune", "%{!mtune=*:-mtune=%(VALUE)}" }, \
- {"tune_32", "%{" OPT_ARCH32 ":%{!mtune=*:-mtune=%(VALUE)}}" }, \
- {"tune_64", "%{" OPT_ARCH64 ":%{!mtune=*:-mtune=%(VALUE)}}" }, \
{"float", "%{!msoft-float:%{!mhard-float:-m%(VALUE)-float}}" }

139
gcc44-pr40521.patch Normal file
View File

@ -0,0 +1,139 @@
2009-10-13 Mikael Pettersson <mikpe@it.uu.se>
Backport from mainline:
2009-10-02 Jakub Jelinek <jakub@redhat.com>
PR debug/40521
* configure.ac (HAVE_GAS_CFI_SECTIONS_DIRECTIVE): New test.
* configure: Regenerated.
* config.in: Regenerated.
* dwarf2out.c (dwarf2out_do_cfi_asm): Return false if
!HAVE_GAS_CFI_SECTIONS_DIRECTIVE and not emitting .eh_frame.
(dwarf2out_init): If HAVE_GAS_CFI_SECTIONS_DIRECTIVE and
not emitting .eh_frame, emit .cfi_sections .debug_frame
directive.
2009-10-09 Jakub Jelinek <jakub@redhat.com>
PR debug/40521
* dwarf2out.c (dwarf2out_init): Test whether
HAVE_GAS_CFI_SECTIONS_DIRECTIVE is non-zero instead of checking
it is defined.
--- gcc/configure.ac 2009-03-24 18:46:03.000000000 +0100
+++ gcc/configure.ac 2009-10-13 12:00:31.000000000 +0200
@@ -2297,6 +2297,17 @@ AC_DEFINE_UNQUOTED(HAVE_GAS_CFI_PERSONAL
then echo 1; else echo 0; fi`],
[Define 0/1 if your assembler supports .cfi_personality.])
+gcc_GAS_CHECK_FEATURE([cfi sections directive],
+ gcc_cv_as_cfi_sections_directive, ,,
+[ .text
+ .cfi_sections .debug_frame, .eh_frame
+ .cfi_startproc
+ .cfi_endproc])
+AC_DEFINE_UNQUOTED(HAVE_GAS_CFI_SECTIONS_DIRECTIVE,
+ [`if test $gcc_cv_as_cfi_sections_directive = yes;
+ then echo 1; else echo 0; fi`],
+ [Define 0/1 if your assembler supports .cfi_sections.])
+
# GAS versions up to and including 2.11.0 may mis-optimize
# .eh_frame data.
gcc_GAS_CHECK_FEATURE(eh_frame optimization, gcc_cv_as_eh_frame,
--- gcc/config.in 2009-07-22 09:43:59.000000000 +0200
+++ gcc/config.in 2009-10-13 12:00:31.000000000 +0200
@@ -839,6 +839,12 @@
#endif
+/* Define 0/1 if your assembler supports .cfi_sections. */
+#ifndef USED_FOR_TARGET
+#undef HAVE_GAS_CFI_SECTIONS_DIRECTIVE
+#endif
+
+
/* Define if your assembler uses the new HImode fild and fist notation. */
#ifndef USED_FOR_TARGET
#undef HAVE_GAS_FILDS_FISTS
--- gcc/configure 2009-03-24 18:46:03.000000000 +0100
+++ gcc/configure 2009-10-13 12:00:31.000000000 +0200
@@ -21680,6 +21680,42 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
+echo "$as_me:$LINENO: checking assembler for cfi sections directive" >&5
+echo $ECHO_N "checking assembler for cfi sections directive... $ECHO_C" >&6
+if test "${gcc_cv_as_cfi_sections_directive+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ gcc_cv_as_cfi_sections_directive=no
+ if test x$gcc_cv_as != x; then
+ echo ' .text
+ .cfi_sections .debug_frame, .eh_frame
+ .cfi_startproc
+ .cfi_endproc' > conftest.s
+ if { ac_try='$gcc_cv_as -o conftest.o conftest.s >&5'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }
+ then
+ gcc_cv_as_cfi_sections_directive=yes
+ else
+ echo "configure: failed program was" >&5
+ cat conftest.s >&5
+ fi
+ rm -f conftest.o conftest.s
+ fi
+fi
+echo "$as_me:$LINENO: result: $gcc_cv_as_cfi_sections_directive" >&5
+echo "${ECHO_T}$gcc_cv_as_cfi_sections_directive" >&6
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_GAS_CFI_SECTIONS_DIRECTIVE `if test $gcc_cv_as_cfi_sections_directive = yes;
+ then echo 1; else echo 0; fi`
+_ACEOF
+
+
# GAS versions up to and including 2.11.0 may mis-optimize
# .eh_frame data.
echo "$as_me:$LINENO: checking assembler for eh_frame optimization" >&5
--- gcc/dwarf2out.c 2009-06-03 19:32:45.000000000 +0200
+++ gcc/dwarf2out.c 2009-10-13 12:00:39.000000000 +0200
@@ -145,7 +145,18 @@ dwarf2out_do_cfi_asm (void)
#endif
if (!flag_dwarf2_cfi_asm || !dwarf2out_do_frame ())
return false;
- if (saved_do_cfi_asm || !eh_personality_libfunc)
+ if (saved_do_cfi_asm)
+ return true;
+ if (!HAVE_GAS_CFI_SECTIONS_DIRECTIVE)
+ {
+#ifdef TARGET_UNWIND_INFO
+ return false;
+#else
+ if (USING_SJLJ_EXCEPTIONS || (!flag_unwind_tables && !flag_exceptions))
+ return false;
+#endif
+ }
+ if (!eh_personality_libfunc)
return true;
if (!HAVE_GAS_CFI_PERSONALITY_DIRECTIVE)
return false;
@@ -16133,6 +16144,14 @@ dwarf2out_init (const char *filename ATT
switch_to_section (cold_text_section);
ASM_OUTPUT_LABEL (asm_out_file, cold_text_section_label);
}
+
+ if (HAVE_GAS_CFI_SECTIONS_DIRECTIVE && dwarf2out_do_cfi_asm ())
+ {
+#ifndef TARGET_UNWIND_INFO
+ if (USING_SJLJ_EXCEPTIONS || (!flag_unwind_tables && !flag_exceptions))
+#endif
+ fprintf (asm_out_file, "\t.cfi_sections\t.debug_frame\n");
+ }
}
/* A helper function for dwarf2out_finish called through

View File

@ -1,2 +1,2 @@
2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz
4da2bce5563b5a133ced09b9391773e9 gcc-4.4.1-20091014.tar.bz2
4df111e31b39e6a0d37ed5cbe2ff97a3 gcc-4.4.2-20091015.tar.bz2