Hello community,
here is the log from the commit of package gcc43
checked in at Mon Oct 13 15:56:23 CEST 2008.
--------
--- gcc43/cross-avr-gcc43.changes 2008-09-22 16:35:05.000000000 +0200
+++ /mounts/work_src_done/STABLE/gcc43/cross-avr-gcc43.changes 2008-10-02 14:26:15.000000000 +0200
@@ -1,0 +2,11 @@
+Thu Oct 2 14:12:29 CEST 2008 - rguenther@suse.de
+
+- Update to gcc-4_3-branch head (140831).
+ * Drop now unneeded patches.
+- Adopt patches from Fedora10
+ * Add fixes for PR34037, PR37189 and revert the fix for PR36741.
+ * Fix omp.h header for the 32/64bit multilib.
+ * Enable -mno-sse to optimize varargs stack usage.
+- Enable proper java home for libgcj. [bnc#303904]
+
+-------------------------------------------------------------------
cross-hppa-gcc-icecream-backend.changes: same change
cross-i386-gcc-icecream-backend.changes: same change
cross-ia64-gcc-icecream-backend.changes: same change
cross-ppc64-gcc-icecream-backend.changes: same change
cross-ppc-gcc-icecream-backend.changes: same change
cross-s390-gcc-icecream-backend.changes: same change
cross-s390x-gcc-icecream-backend.changes: same change
cross-spu-gcc.changes: same change
cross-spu-gcc-static.changes: same change
cross-x86_64-gcc-icecream-backend.changes: same change
gcc43.changes: same change
libgcj43.changes: same change
calling whatdependson for head-i586
Old:
----
gcc-4.3.3-20080915.tar.bz2
nvl425790.patch
nvl425803.patch
pr35620.diff
pr36343.diff
New:
----
gcc-4.3.3-20081002.tar.bz2
gcc43-c++-builtin-redecl.patch
gcc43-java-debug-iface-type.patch
gcc43-libgomp-omp_h-multilib.patch
gcc43-pr34037.patch
gcc43-pr36741-revert.patch
gcc43-pr37189.patch
gcc43-x86_64-va_start.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cross-avr-gcc43.spec ++++++
--- /var/tmp/diff_new_pack.cq3818/_old 2008-10-13 15:52:43.000000000 +0200
+++ /var/tmp/diff_new_pack.cq3818/_new 2008-10-13 15:52:43.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-avr-gcc43 (Version 4.3.3_20080915)
+# spec file for package cross-avr-gcc43 (Version 4.3.3_20081002)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -65,8 +65,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.3.3_20080915
-Release: 2
+Version: 4.3.3_20081002
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -99,17 +99,22 @@
Patch28: pr33763.diff
Patch30: Wunprototyped-calls.diff
Patch31: pr27799.diff
-Patch39: pr36343.diff
Patch40: pr36765.diff
Patch41: fpreserve-function-arguments43.patch
Patch42: pr27975.diff
Patch43: build-id.diff
-Patch44: pr35620.diff
Patch45: nvl423594.patch
# A set of patches from the RH srpm
+Patch50: gcc43-c++-builtin-redecl.patch
Patch51: gcc41-ia64-stack-protector.patch
+Patch52: gcc43-java-debug-iface-type.patch
+Patch53: gcc43-libgomp-omp_h-multilib.patch
+Patch54: gcc43-pr34037.patch
Patch55: gcc41-java-slow_pthread_self.patch
+Patch56: gcc43-pr36741-revert.patch
Patch57: gcc41-ppc32-retaddr.patch
+Patch58: gcc43-pr37189.patch
+Patch59: gcc43-x86_64-va_start.patch
# Some patches taken from Debian
Patch60: gcc43-textdomain.patch
Patch61: gcc43-rename-info-files.patch
@@ -145,12 +150,10 @@
Patch104: ibm-cell-split
Patch105: ibm-cell-split-fixes
Patch106: nvl425806.patch
-Patch107: nvl425803.patch
Patch109: nvl425783.patch
Patch110: nvl425784.patch
Patch111: nvl425788.patch
Patch112: nvl425789.patch
-Patch113: nvl425790.patch
Patch114: nvl425791.patch
Patch115: nvl425794.patch
Patch116: nvl425798-1.patch
@@ -232,18 +235,23 @@
%patch28
%patch30
%patch31
-%patch39
%patch40
%patch41
%patch42
%if 0%{suse_version} > 1100
%patch43
%endif
-%patch44
%patch45
+%patch50
%patch51
+%patch52
+%patch53
+%patch54
%patch55
+%patch56
%patch57
+%patch58
+%patch59
%patch60
%patch61
%patch70
@@ -275,12 +283,10 @@
%patch104 -p1
%patch105 -p1
%patch106
-%patch107
%patch109
%patch110
%patch111
%patch112
-%patch113
%patch114
%patch115
%patch116
@@ -415,6 +421,7 @@
%if !%{build_libjava}
--disable-libgcj \
%else
+ --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
@@ -497,6 +504,14 @@
%defattr(-,root,root)
%{_prefix}
%changelog
+* Thu Oct 02 2008 rguenther@suse.de
+- Update to gcc-4_3-branch head (140831).
+ * Drop now unneeded patches.
+- Adopt patches from Fedora10
+ * Add fixes for PR34037, PR37189 and revert the fix for PR36741.
+ * Fix omp.h header for the 32/64bit multilib.
+ * Enable -mno-sse to optimize varargs stack usage.
+- Enable proper java home for libgcj. [bnc#303904]
* Sat Sep 20 2008 rguenther@suse.de
- Drop patch for bnc#425800 again.
- Disable fortran for static crosses. [bnc#428329]
++++++ cross-hppa-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.cq3818/_old 2008-10-13 15:52:43.000000000 +0200
+++ /var/tmp/diff_new_pack.cq3818/_new 2008-10-13 15:52:43.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-hppa-gcc-icecream-backend (Version 4.3.3_20080915)
+# spec file for package cross-hppa-gcc-icecream-backend (Version 4.3.3_20081002)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -42,8 +42,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.3.3_20080915
-Release: 2
+Version: 4.3.3_20081002
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -76,17 +76,22 @@
Patch28: pr33763.diff
Patch30: Wunprototyped-calls.diff
Patch31: pr27799.diff
-Patch39: pr36343.diff
Patch40: pr36765.diff
Patch41: fpreserve-function-arguments43.patch
Patch42: pr27975.diff
Patch43: build-id.diff
-Patch44: pr35620.diff
Patch45: nvl423594.patch
# A set of patches from the RH srpm
+Patch50: gcc43-c++-builtin-redecl.patch
Patch51: gcc41-ia64-stack-protector.patch
+Patch52: gcc43-java-debug-iface-type.patch
+Patch53: gcc43-libgomp-omp_h-multilib.patch
+Patch54: gcc43-pr34037.patch
Patch55: gcc41-java-slow_pthread_self.patch
+Patch56: gcc43-pr36741-revert.patch
Patch57: gcc41-ppc32-retaddr.patch
+Patch58: gcc43-pr37189.patch
+Patch59: gcc43-x86_64-va_start.patch
# Some patches taken from Debian
Patch60: gcc43-textdomain.patch
Patch61: gcc43-rename-info-files.patch
@@ -122,12 +127,10 @@
Patch104: ibm-cell-split
Patch105: ibm-cell-split-fixes
Patch106: nvl425806.patch
-Patch107: nvl425803.patch
Patch109: nvl425783.patch
Patch110: nvl425784.patch
Patch111: nvl425788.patch
Patch112: nvl425789.patch
-Patch113: nvl425790.patch
Patch114: nvl425791.patch
Patch115: nvl425794.patch
Patch116: nvl425798-1.patch
@@ -212,18 +215,23 @@
%patch28
%patch30
%patch31
-%patch39
%patch40
%patch41
%patch42
%if 0%{suse_version} > 1100
%patch43
%endif
-%patch44
%patch45
+%patch50
%patch51
+%patch52
+%patch53
+%patch54
%patch55
+%patch56
%patch57
+%patch58
+%patch59
%patch60
%patch61
%patch70
@@ -255,12 +263,10 @@
%patch104 -p1
%patch105 -p1
%patch106
-%patch107
%patch109
%patch110
%patch111
%patch112
-%patch113
%patch114
%patch115
%patch116
@@ -395,6 +401,7 @@
%if !%{build_libjava}
--disable-libgcj \
%else
+ --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
@@ -515,6 +522,14 @@
/usr/share/icecream-envs
%changelog
+* Thu Oct 02 2008 rguenther@suse.de
+- Update to gcc-4_3-branch head (140831).
+ * Drop now unneeded patches.
+- Adopt patches from Fedora10
+ * Add fixes for PR34037, PR37189 and revert the fix for PR36741.
+ * Fix omp.h header for the 32/64bit multilib.
+ * Enable -mno-sse to optimize varargs stack usage.
+- Enable proper java home for libgcj. [bnc#303904]
* Sat Sep 20 2008 rguenther@suse.de
- Drop patch for bnc#425800 again.
- Disable fortran for static crosses. [bnc#428329]
cross-i386-gcc-icecream-backend.spec: same change
cross-ia64-gcc-icecream-backend.spec: same change
cross-ppc64-gcc-icecream-backend.spec: same change
cross-ppc-gcc-icecream-backend.spec: same change
cross-s390-gcc-icecream-backend.spec: same change
cross-s390x-gcc-icecream-backend.spec: same change
++++++ cross-spu-gcc.spec ++++++
--- /var/tmp/diff_new_pack.cq3818/_old 2008-10-13 15:52:43.000000000 +0200
+++ /var/tmp/diff_new_pack.cq3818/_new 2008-10-13 15:52:43.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-spu-gcc (Version 4.3.3_20080915)
+# spec file for package cross-spu-gcc (Version 4.3.3_20081002)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -56,8 +56,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v2 or later
-Version: 4.3.3_20080915
-Release: 2
+Version: 4.3.3_20081002
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -90,17 +90,22 @@
Patch28: pr33763.diff
Patch30: Wunprototyped-calls.diff
Patch31: pr27799.diff
-Patch39: pr36343.diff
Patch40: pr36765.diff
Patch41: fpreserve-function-arguments43.patch
Patch42: pr27975.diff
Patch43: build-id.diff
-Patch44: pr35620.diff
Patch45: nvl423594.patch
# A set of patches from the RH srpm
+Patch50: gcc43-c++-builtin-redecl.patch
Patch51: gcc41-ia64-stack-protector.patch
+Patch52: gcc43-java-debug-iface-type.patch
+Patch53: gcc43-libgomp-omp_h-multilib.patch
+Patch54: gcc43-pr34037.patch
Patch55: gcc41-java-slow_pthread_self.patch
+Patch56: gcc43-pr36741-revert.patch
Patch57: gcc41-ppc32-retaddr.patch
+Patch58: gcc43-pr37189.patch
+Patch59: gcc43-x86_64-va_start.patch
# Some patches taken from Debian
Patch60: gcc43-textdomain.patch
Patch61: gcc43-rename-info-files.patch
@@ -136,12 +141,10 @@
Patch104: ibm-cell-split
Patch105: ibm-cell-split-fixes
Patch106: nvl425806.patch
-Patch107: nvl425803.patch
Patch109: nvl425783.patch
Patch110: nvl425784.patch
Patch111: nvl425788.patch
Patch112: nvl425789.patch
-Patch113: nvl425790.patch
Patch114: nvl425791.patch
Patch115: nvl425794.patch
Patch116: nvl425798-1.patch
@@ -218,18 +221,23 @@
%patch28
%patch30
%patch31
-%patch39
%patch40
%patch41
%patch42
%if 0%{suse_version} > 1100
%patch43
%endif
-%patch44
%patch45
+%patch50
%patch51
+%patch52
+%patch53
+%patch54
%patch55
+%patch56
%patch57
+%patch58
+%patch59
%patch60
%patch61
%patch70
@@ -261,12 +269,10 @@
%patch104 -p1
%patch105 -p1
%patch106
-%patch107
%patch109
%patch110
%patch111
%patch112
-%patch113
%patch114
%patch115
%patch116
@@ -401,6 +407,7 @@
%if !%{build_libjava}
--disable-libgcj \
%else
+ --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
@@ -483,6 +490,14 @@
%defattr(-,root,root)
%{_prefix}
%changelog
+* Thu Oct 02 2008 rguenther@suse.de
+- Update to gcc-4_3-branch head (140831).
+ * Drop now unneeded patches.
+- Adopt patches from Fedora10
+ * Add fixes for PR34037, PR37189 and revert the fix for PR36741.
+ * Fix omp.h header for the 32/64bit multilib.
+ * Enable -mno-sse to optimize varargs stack usage.
+- Enable proper java home for libgcj. [bnc#303904]
* Sat Sep 20 2008 rguenther@suse.de
- Drop patch for bnc#425800 again.
- Disable fortran for static crosses. [bnc#428329]
cross-spu-gcc-static.spec: same change
++++++ cross-x86_64-gcc-icecream-backend.spec ++++++
--- /var/tmp/diff_new_pack.cq3818/_old 2008-10-13 15:52:43.000000000 +0200
+++ /var/tmp/diff_new_pack.cq3818/_new 2008-10-13 15:52:43.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package cross-x86_64-gcc-icecream-backend (Version 4.3.3_20080915)
+# spec file for package cross-x86_64-gcc-icecream-backend (Version 4.3.3_20081002)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -42,8 +42,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT
-Version: 4.3.3_20080915
-Release: 2
+Version: 4.3.3_20081002
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -76,17 +76,22 @@
Patch28: pr33763.diff
Patch30: Wunprototyped-calls.diff
Patch31: pr27799.diff
-Patch39: pr36343.diff
Patch40: pr36765.diff
Patch41: fpreserve-function-arguments43.patch
Patch42: pr27975.diff
Patch43: build-id.diff
-Patch44: pr35620.diff
Patch45: nvl423594.patch
# A set of patches from the RH srpm
+Patch50: gcc43-c++-builtin-redecl.patch
Patch51: gcc41-ia64-stack-protector.patch
+Patch52: gcc43-java-debug-iface-type.patch
+Patch53: gcc43-libgomp-omp_h-multilib.patch
+Patch54: gcc43-pr34037.patch
Patch55: gcc41-java-slow_pthread_self.patch
+Patch56: gcc43-pr36741-revert.patch
Patch57: gcc41-ppc32-retaddr.patch
+Patch58: gcc43-pr37189.patch
+Patch59: gcc43-x86_64-va_start.patch
# Some patches taken from Debian
Patch60: gcc43-textdomain.patch
Patch61: gcc43-rename-info-files.patch
@@ -122,12 +127,10 @@
Patch104: ibm-cell-split
Patch105: ibm-cell-split-fixes
Patch106: nvl425806.patch
-Patch107: nvl425803.patch
Patch109: nvl425783.patch
Patch110: nvl425784.patch
Patch111: nvl425788.patch
Patch112: nvl425789.patch
-Patch113: nvl425790.patch
Patch114: nvl425791.patch
Patch115: nvl425794.patch
Patch116: nvl425798-1.patch
@@ -212,18 +215,23 @@
%patch28
%patch30
%patch31
-%patch39
%patch40
%patch41
%patch42
%if 0%{suse_version} > 1100
%patch43
%endif
-%patch44
%patch45
+%patch50
%patch51
+%patch52
+%patch53
+%patch54
%patch55
+%patch56
%patch57
+%patch58
+%patch59
%patch60
%patch61
%patch70
@@ -255,12 +263,10 @@
%patch104 -p1
%patch105 -p1
%patch106
-%patch107
%patch109
%patch110
%patch111
%patch112
-%patch113
%patch114
%patch115
%patch116
@@ -395,6 +401,7 @@
%if !%{build_libjava}
--disable-libgcj \
%else
+ --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
@@ -515,6 +522,14 @@
/usr/share/icecream-envs
%changelog
+* Thu Oct 02 2008 rguenther@suse.de
+- Update to gcc-4_3-branch head (140831).
+ * Drop now unneeded patches.
+- Adopt patches from Fedora10
+ * Add fixes for PR34037, PR37189 and revert the fix for PR36741.
+ * Fix omp.h header for the 32/64bit multilib.
+ * Enable -mno-sse to optimize varargs stack usage.
+- Enable proper java home for libgcj. [bnc#303904]
* Sat Sep 20 2008 rguenther@suse.de
- Drop patch for bnc#425800 again.
- Disable fortran for static crosses. [bnc#428329]
++++++ gcc43.spec ++++++
--- /var/tmp/diff_new_pack.cq3818/_old 2008-10-13 15:52:43.000000000 +0200
+++ /var/tmp/diff_new_pack.cq3818/_new 2008-10-13 15:52:43.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package gcc43 (Version 4.3.3_20080915)
+# spec file for package gcc43 (Version 4.3.3_20081002)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -115,8 +115,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v3 or later
-Version: 4.3.3_20080915
-Release: 2
+Version: 4.3.3_20081002
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -162,17 +162,22 @@
Patch28: pr33763.diff
Patch30: Wunprototyped-calls.diff
Patch31: pr27799.diff
-Patch39: pr36343.diff
Patch40: pr36765.diff
Patch41: fpreserve-function-arguments43.patch
Patch42: pr27975.diff
Patch43: build-id.diff
-Patch44: pr35620.diff
Patch45: nvl423594.patch
# A set of patches from the RH srpm
+Patch50: gcc43-c++-builtin-redecl.patch
Patch51: gcc41-ia64-stack-protector.patch
+Patch52: gcc43-java-debug-iface-type.patch
+Patch53: gcc43-libgomp-omp_h-multilib.patch
+Patch54: gcc43-pr34037.patch
Patch55: gcc41-java-slow_pthread_self.patch
+Patch56: gcc43-pr36741-revert.patch
Patch57: gcc41-ppc32-retaddr.patch
+Patch58: gcc43-pr37189.patch
+Patch59: gcc43-x86_64-va_start.patch
# Some patches taken from Debian
Patch60: gcc43-textdomain.patch
Patch61: gcc43-rename-info-files.patch
@@ -208,12 +213,10 @@
Patch104: ibm-cell-split
Patch105: ibm-cell-split-fixes
Patch106: nvl425806.patch
-Patch107: nvl425803.patch
Patch109: nvl425783.patch
Patch110: nvl425784.patch
Patch111: nvl425788.patch
Patch112: nvl425789.patch
-Patch113: nvl425790.patch
Patch114: nvl425791.patch
Patch115: nvl425794.patch
Patch116: nvl425798-1.patch
@@ -1395,18 +1398,23 @@
%patch28
%patch30
%patch31
-%patch39
%patch40
%patch41
%patch42
%if 0%{suse_version} > 1100
%patch43
%endif
-%patch44
%patch45
+%patch50
%patch51
+%patch52
+%patch53
+%patch54
%patch55
+%patch56
%patch57
+%patch58
+%patch59
%patch60
%patch61
%patch70
@@ -1438,12 +1446,10 @@
%patch104 -p1
%patch105 -p1
%patch106
-%patch107
%patch109
%patch110
%patch111
%patch112
-%patch113
%patch114
%patch115
%patch116
@@ -1578,6 +1584,7 @@
%if !%{build_libjava}
--disable-libgcj \
%else
+ --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
@@ -2499,6 +2506,14 @@
%endif
%changelog
+* Thu Oct 02 2008 rguenther@suse.de
+- Update to gcc-4_3-branch head (140831).
+ * Drop now unneeded patches.
+- Adopt patches from Fedora10
+ * Add fixes for PR34037, PR37189 and revert the fix for PR36741.
+ * Fix omp.h header for the 32/64bit multilib.
+ * Enable -mno-sse to optimize varargs stack usage.
+- Enable proper java home for libgcj. [bnc#303904]
* Sat Sep 20 2008 rguenther@suse.de
- Drop patch for bnc#425800 again.
- Disable fortran for static crosses. [bnc#428329]
++++++ libgcj43.spec ++++++
--- /var/tmp/diff_new_pack.cq3818/_old 2008-10-13 15:52:43.000000000 +0200
+++ /var/tmp/diff_new_pack.cq3818/_new 2008-10-13 15:52:43.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package libgcj43 (Version 4.3.3_20080915)
+# spec file for package libgcj43 (Version 4.3.3_20081002)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -126,8 +126,8 @@
%define biarch_targets x86_64 s390x powerpc64 powerpc
Url: http://gcc.gnu.org/
License: GPL v2 or later; LGPL v2.1 or later
-Version: 4.3.3_20080915
-Release: 2
+Version: 4.3.3_20081002
+Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
%define snapshot_date %(echo %version | sed 's/[34]\.[0-4]\.[0-6]//' | sed 's/_/-/')
@@ -173,17 +173,22 @@
Patch28: pr33763.diff
Patch30: Wunprototyped-calls.diff
Patch31: pr27799.diff
-Patch39: pr36343.diff
Patch40: pr36765.diff
Patch41: fpreserve-function-arguments43.patch
Patch42: pr27975.diff
Patch43: build-id.diff
-Patch44: pr35620.diff
Patch45: nvl423594.patch
# A set of patches from the RH srpm
+Patch50: gcc43-c++-builtin-redecl.patch
Patch51: gcc41-ia64-stack-protector.patch
+Patch52: gcc43-java-debug-iface-type.patch
+Patch53: gcc43-libgomp-omp_h-multilib.patch
+Patch54: gcc43-pr34037.patch
Patch55: gcc41-java-slow_pthread_self.patch
+Patch56: gcc43-pr36741-revert.patch
Patch57: gcc41-ppc32-retaddr.patch
+Patch58: gcc43-pr37189.patch
+Patch59: gcc43-x86_64-va_start.patch
# Some patches taken from Debian
Patch60: gcc43-textdomain.patch
Patch61: gcc43-rename-info-files.patch
@@ -219,12 +224,10 @@
Patch104: ibm-cell-split
Patch105: ibm-cell-split-fixes
Patch106: nvl425806.patch
-Patch107: nvl425803.patch
Patch109: nvl425783.patch
Patch110: nvl425784.patch
Patch111: nvl425788.patch
Patch112: nvl425789.patch
-Patch113: nvl425790.patch
Patch114: nvl425791.patch
Patch115: nvl425794.patch
Patch116: nvl425798-1.patch
@@ -629,18 +632,23 @@
%patch28
%patch30
%patch31
-%patch39
%patch40
%patch41
%patch42
%if 0%{suse_version} > 1100
%patch43
%endif
-%patch44
%patch45
+%patch50
%patch51
+%patch52
+%patch53
+%patch54
%patch55
+%patch56
%patch57
+%patch58
+%patch59
%patch60
%patch61
%patch70
@@ -672,12 +680,10 @@
%patch104 -p1
%patch105 -p1
%patch106
-%patch107
%patch109
%patch110
%patch111
%patch112
-%patch113
%patch114
%patch115
%patch116
@@ -812,6 +818,7 @@
%if !%{build_libjava}
--disable-libgcj \
%else
+ --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
@@ -1299,6 +1306,14 @@
%endif
%changelog
+* Thu Oct 02 2008 rguenther@suse.de
+- Update to gcc-4_3-branch head (140831).
+ * Drop now unneeded patches.
+- Adopt patches from Fedora10
+ * Add fixes for PR34037, PR37189 and revert the fix for PR36741.
+ * Fix omp.h header for the 32/64bit multilib.
+ * Enable -mno-sse to optimize varargs stack usage.
+- Enable proper java home for libgcj. [bnc#303904]
* Sat Sep 20 2008 rguenther@suse.de
- Drop patch for bnc#425800 again.
- Disable fortran for static crosses. [bnc#428329]
++++++ gcc-4.3.3-20080915.tar.bz2 -> gcc-4.3.3-20081002.tar.bz2 ++++++
gcc43/gcc-4.3.3-20080915.tar.bz2 /mounts/work_src_done/STABLE/gcc43/gcc-4.3.3-20081002.tar.bz2 differ: byte 11, line 1
++++++ gcc43-c++-builtin-redecl.patch ++++++
2007-10-02 Jakub Jelinek
* decl.c (duplicate_decls): When redeclaring a builtin function,
keep the merged decl builtin whenever types match, even if new
decl defines a function.
* gcc.dg/builtins-65.c: New test.
* g++.dg/ext/builtin10.C: New test.
--- gcc/cp/decl.c.jj 2007-10-01 22:11:09.000000000 +0200
+++ gcc/cp/decl.c 2007-10-02 11:39:46.000000000 +0200
@@ -1988,23 +1988,21 @@ duplicate_decls (tree newdecl, tree oldd
DECL_ARGUMENTS (olddecl) = DECL_ARGUMENTS (newdecl);
DECL_RESULT (olddecl) = DECL_RESULT (newdecl);
}
+ /* If redeclaring a builtin function, it stays built in. */
+ if (types_match && DECL_BUILT_IN (olddecl))
+ {
+ DECL_BUILT_IN_CLASS (newdecl) = DECL_BUILT_IN_CLASS (olddecl);
+ DECL_FUNCTION_CODE (newdecl) = DECL_FUNCTION_CODE (olddecl);
+ /* If we're keeping the built-in definition, keep the rtl,
+ regardless of declaration matches. */
+ COPY_DECL_RTL (olddecl, newdecl);
+ }
if (new_defines_function)
/* If defining a function declared with other language
linkage, use the previously declared language linkage. */
SET_DECL_LANGUAGE (newdecl, DECL_LANGUAGE (olddecl));
else if (types_match)
{
- /* If redeclaring a builtin function, and not a definition,
- it stays built in. */
- if (DECL_BUILT_IN (olddecl))
- {
- DECL_BUILT_IN_CLASS (newdecl) = DECL_BUILT_IN_CLASS (olddecl);
- DECL_FUNCTION_CODE (newdecl) = DECL_FUNCTION_CODE (olddecl);
- /* If we're keeping the built-in definition, keep the rtl,
- regardless of declaration matches. */
- COPY_DECL_RTL (olddecl, newdecl);
- }
-
DECL_RESULT (newdecl) = DECL_RESULT (olddecl);
/* Don't clear out the arguments if we're redefining a function. */
if (DECL_ARGUMENTS (olddecl))
--- gcc/testsuite/gcc.dg/builtins-65.c.jj 2007-10-02 11:23:51.000000000 +0200
+++ gcc/testsuite/gcc.dg/builtins-65.c 2007-10-02 11:24:12.000000000 +0200
@@ -0,0 +1,25 @@
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+typedef __SIZE_TYPE__ size_t;
+extern void __chk_fail (void);
+extern int snprintf (char *, size_t, const char *, ...);
+extern inline __attribute__((gnu_inline, always_inline)) int snprintf (char *a, size_t b, const char *fmt, ...)
+{
+ if (__builtin_object_size (a, 0) != -1UL && __builtin_object_size (a, 0) < b)
+ __chk_fail ();
+ return __builtin_snprintf (a, b, fmt, __builtin_va_arg_pack ());
+}
+extern int snprintf (char *, size_t, const char *, ...) __asm ("mysnprintf");
+
+char buf[10];
+
+int
+main (void)
+{
+ snprintf (buf, 10, "%d%d\n", 10, 10);
+ return 0;
+}
+
+/* { dg-final { scan-assembler "mysnprintf" } } */
+/* { dg-final { scan-assembler-not "__chk_fail" } } */
--- gcc/testsuite/g++.dg/ext/builtin10.C.jj 2007-10-02 11:19:45.000000000 +0200
+++ gcc/testsuite/g++.dg/ext/builtin10.C 2007-10-02 11:23:26.000000000 +0200
@@ -0,0 +1,27 @@
+// { dg-do compile }
+// { dg-options "-O2" }
+
+typedef __SIZE_TYPE__ size_t;
+extern "C" {
+extern void __chk_fail (void);
+extern int snprintf (char *, size_t, const char *, ...);
+extern inline __attribute__((gnu_inline, always_inline)) int snprintf (char *a, size_t b, const char *fmt, ...)
+{
+ if (__builtin_object_size (a, 0) != -1UL && __builtin_object_size (a, 0) < b)
+ __chk_fail ();
+ return __builtin_snprintf (a, b, fmt, __builtin_va_arg_pack ());
+}
+extern int snprintf (char *, size_t, const char *, ...) __asm ("mysnprintf");
+}
+
+char buf[10];
+
+int
+main (void)
+{
+ snprintf (buf, 10, "%d%d\n", 10, 10);
+ return 0;
+}
+
+// { dg-final { scan-assembler "mysnprintf" } }
+// { dg-final { scan-assembler-not "__chk_fail" } }
++++++ gcc43-java-debug-iface-type.patch ++++++
2008-01-25 Jakub Jelinek
* lang.c (java_classify_record): Revert 2007-12-20 change.
--- gcc/java/lang.c 2007-12-27 09:09:49.000000000 +0100
+++ gcc/java/lang.c 2008-01-25 17:43:57.000000000 +0100
@@ -965,9 +965,7 @@ java_classify_record (tree type)
if (! CLASS_P (type))
return RECORD_IS_STRUCT;
- /* ??? GDB does not support DW_TAG_interface_type as of December,
- 2007. Re-enable this at a later time. */
- if (0 && CLASS_INTERFACE (TYPE_NAME (type)))
+ if (CLASS_INTERFACE (TYPE_NAME (type)))
return RECORD_IS_INTERFACE;
return RECORD_IS_CLASS;
++++++ gcc43-libgomp-omp_h-multilib.patch ++++++
2008-06-09 Jakub Jelinek
* omp.h.in (omp_nest_lock_t): Fix up for Linux multilibs.
--- libgomp/omp.h.in.jj 2008-06-09 13:34:05.000000000 +0200
+++ libgomp/omp.h.in 2008-06-09 13:34:48.000000000 +0200
@@ -42,8 +42,8 @@ typedef struct
typedef struct
{
- unsigned char _x[@OMP_NEST_LOCK_SIZE@]
- __attribute__((__aligned__(@OMP_NEST_LOCK_ALIGN@)));
+ unsigned char _x[8 + sizeof (void *)]
+ __attribute__((__aligned__(sizeof (void *))));
} omp_nest_lock_t;
#endif
++++++ gcc43-pr34037.patch ++++++
2008-09-11 Jakub Jelinek
PR debug/34037
* gimplify.c (gimplify_type_sizes): When not optimizing, ensure
TYPE_MIN_VALUE and TYPE_MAX_VALUE is not is not DECL_IGNORED_P
VAR_DECL.
* cfgexpand.c (expand_used_vars): Keep DECL_ARTIFICIAL
!DECL_IGNORED_P vars in unexpanded_var_list list for instantiate_decls,
ggc_free other TREE_LIST nodes from that chain.
* function.c (instantiate_decls): Instantiate also DECL_RTL
of vars in cfun->unexpanded_var_list, free that list afterwards.
--- gcc/gimplify.c.jj 2008-09-10 20:50:11.000000000 +0200
+++ gcc/gimplify.c 2008-09-11 13:54:22.000000000 +0200
@@ -7105,6 +7105,18 @@ gimplify_type_sizes (tree type, gimple_s
/* These types may not have declarations, so handle them here. */
gimplify_type_sizes (TREE_TYPE (type), list_p);
gimplify_type_sizes (TYPE_DOMAIN (type), list_p);
+ /* When not optimizing, ensure VLA bounds aren't removed. */
+ if (!optimize
+ && TYPE_DOMAIN (type)
+ && INTEGRAL_TYPE_P (TYPE_DOMAIN (type)))
+ {
+ t = TYPE_MIN_VALUE (TYPE_DOMAIN (type));
+ if (t && TREE_CODE (t) == VAR_DECL && DECL_ARTIFICIAL (t))
+ DECL_IGNORED_P (t) = 0;
+ t = TYPE_MAX_VALUE (TYPE_DOMAIN (type));
+ if (t && TREE_CODE (t) == VAR_DECL && DECL_ARTIFICIAL (t))
+ DECL_IGNORED_P (t) = 0;
+ }
break;
case RECORD_TYPE:
--- gcc/cfgexpand.c.jj 2008-09-09 16:08:04.000000000 +0200
+++ gcc/cfgexpand.c 2008-09-11 15:01:00.000000000 +0200
@@ -1440,7 +1440,7 @@ estimated_stack_frame_size (void)
static void
expand_used_vars (void)
{
- tree t, outer_block = DECL_INITIAL (current_function_decl);
+ tree t, next, outer_block = DECL_INITIAL (current_function_decl);
/* Compute the phase of the stack frame for this function. */
{
@@ -1453,11 +1453,15 @@ expand_used_vars (void)
/* At this point all variables on the unexpanded_var_list with TREE_USED
set are not associated with any block scope. Lay them out. */
- for (t = cfun->unexpanded_var_list; t; t = TREE_CHAIN (t))
+ t = cfun->unexpanded_var_list;
+ cfun->unexpanded_var_list = NULL_TREE;
+ for (; t; t = next)
{
tree var = TREE_VALUE (t);
bool expand_now = false;
+ next = TREE_CHAIN (t);
+
/* We didn't set a block for static or extern because it's hard
to tell the difference between a global variable (re)declared
in a local scope, and one that's really declared there to
@@ -1484,9 +1488,25 @@ expand_used_vars (void)
TREE_USED (var) = 1;
if (expand_now)
- expand_one_var (var, true, true);
+ {
+ expand_one_var (var, true, true);
+ if (DECL_ARTIFICIAL (var) && !DECL_IGNORED_P (var))
+ {
+ rtx rtl = DECL_RTL_IF_SET (var);
+
+ /* Keep artificial non-ignored vars in cfun->unexpanded_var_list
+ chain until instantiate_decls. */
+ if (rtl && (MEM_P (rtl) || GET_CODE (rtl) == CONCAT))
+ {
+ TREE_CHAIN (t) = cfun->unexpanded_var_list;
+ cfun->unexpanded_var_list = t;
+ continue;
+ }
+ }
+ }
+
+ ggc_free (t);
}
- cfun->unexpanded_var_list = NULL_TREE;
/* At this point, all variables within the block tree with TREE_USED
set are actually used by the optimized function. Lay them out. */
--- gcc/function.c.jj 2008-09-09 21:13:24.000000000 +0200
+++ gcc/function.c 2008-09-11 14:56:47.000000000 +0200
@@ -1645,7 +1645,7 @@ instantiate_decls_1 (tree let)
static void
instantiate_decls (tree fndecl)
{
- tree decl;
+ tree decl, t, next;
/* Process all parameters of the function. */
for (decl = DECL_ARGUMENTS (fndecl); decl; decl = TREE_CHAIN (decl))
@@ -1661,6 +1661,17 @@ instantiate_decls (tree fndecl)
/* Now process all variables defined in the function or its subblocks. */
instantiate_decls_1 (DECL_INITIAL (fndecl));
+
+ t = cfun->unexpanded_var_list;
+ cfun->unexpanded_var_list = NULL_TREE;
+ for (; t; t = next)
+ {
+ next = TREE_CHAIN (t);
+ decl = TREE_VALUE (t);
+ if (DECL_RTL_SET_P (decl))
+ instantiate_decl_rtl (DECL_RTL (decl));
+ ggc_free (t);
+ }
}
/* Pass through the INSNS of function FNDECL and convert virtual register
++++++ gcc43-pr36741-revert.patch ++++++
Revert:
2008-08-28 Dodji Seketeli
PR c++/36741
* tree.c (int_fits_type_p): Don't forget unsigned integers
of type sizetype which higher end word equals -1.
* g++.dg/other/new-size-type.C: New test.
--- gcc/tree.c (revision 139711)
+++ gcc/tree.c (revision 139710)
@@ -6296,21 +6296,6 @@ int_fits_type_p (const_tree c, const_tre
for "unknown if constant fits", 0 for "constant known *not* to fit" and 1
for "constant known to fit". */
- if (TREE_TYPE (c) == sizetype
- && TYPE_UNSIGNED (TREE_TYPE (c))
- && TREE_INT_CST_HIGH (c) == -1
- && !TREE_OVERFLOW (c))
- /* So c is an unsigned integer which type is sizetype.
- sizetype'd integers are sign extended even though they are
- unsigned. If the integer value fits in the lower end word of c,
- and if the higher end word has all its bits set to 1, that
- means the higher end bits are set to 1 only for sign extension.
- So let's convert c into an equivalent zero extended unsigned
- integer. */
- c = force_fit_type_double (size_type_node,
- TREE_INT_CST_LOW (c),
- TREE_INT_CST_HIGH (c),
- false, false);
/* Check if C >= type_low_bound. */
if (type_low_bound && TREE_CODE (type_low_bound) == INTEGER_CST)
{
--- gcc/testsuite/g++.dg/other/new-size-type.C (revision 139711)
+++ gcc/testsuite/g++.dg/other/new-size-type.C (revision 139710)
@@ -1,10 +1,10 @@
// Contributed by Dodji Seketeli
// Origin: PR c++/36741
#include
const char*
foo()
{
- return new char[~static_cast(0)];// { dg-bogus "large" }
+ return new char[~static_cast(0)];// { dg-bogus "large" "" { xfail *-*-* } }
}
++++++ gcc43-pr37189.patch ++++++
2008-09-03 Jakub Jelinek
PR c++/37189
* cp-tree.h (defer_mark_used_calls, deferred_mark_used_calls): New
extern decls.
* decl2.c (mark_used): If defer_mark_used_calls, push decl into
deferred_mark_used_calls vector and exit early.
* decl.c (defer_mark_used_calls, deferred_mark_used_calls): New
variables.
(finish_function): Set defer_mark_used_calls for the duration of the
function. Call mark_used on any queued decls.
PR c++/37189
* g++.dg/gomp/pr37189.C: New test.
--- gcc/cp/decl2.c (revision 139954)
+++ gcc/cp/decl2.c (revision 139955)
@@ -3776,6 +3776,15 @@ mark_used (tree decl)
/* If we don't need a value, then we don't need to synthesize DECL. */
if (skip_evaluation)
return;
+
+ /* If within finish_function, defer the rest until that function
+ finishes, otherwise it might recurse. */
+ if (defer_mark_used_calls)
+ {
+ VEC_safe_push (tree, gc, deferred_mark_used_calls, decl);
+ return;
+ }
+
/* Normally, we can wait until instantiation-time to synthesize
DECL. However, if DECL is a static data member initialized with
a constant, we need the value right now because a reference to
--- gcc/cp/decl.c (revision 139954)
+++ gcc/cp/decl.c (revision 139955)
@@ -227,6 +227,11 @@ struct named_label_entry GTY(())
function, two inside the body of a function in a local class, etc.) */
int function_depth;
+/* To avoid unwanted recursion, finish_function defers all mark_used calls
+ encountered during its execution until it finishes. */
+bool defer_mark_used_calls;
+VEC(tree, gc) *deferred_mark_used_calls;
+
/* States indicating how grokdeclarator() should handle declspecs marked
with __attribute__((deprecated)). An object declared as
__attribute__((deprecated)) suppresses warnings of uses of other
@@ -12033,6 +12038,9 @@ finish_function (int flags)
if (fndecl == NULL_TREE)
return error_mark_node;
+ gcc_assert (!defer_mark_used_calls);
+ defer_mark_used_calls = true;
+
if (DECL_NONSTATIC_MEMBER_FUNCTION_P (fndecl)
&& DECL_VIRTUAL_P (fndecl)
&& !processing_template_decl)
@@ -12232,6 +12240,17 @@ finish_function (int flags)
cxx_pop_function_context and then reset via pop_function_context. */
current_function_decl = NULL_TREE;
+ defer_mark_used_calls = false;
+ if (deferred_mark_used_calls)
+ {
+ unsigned int i;
+ tree decl;
+
+ for (i = 0; VEC_iterate (tree, deferred_mark_used_calls, i, decl); i++)
+ mark_used (decl);
+ VEC_free (tree, gc, deferred_mark_used_calls);
+ }
+
return fndecl;
}
--- gcc/cp/cp-tree.h (revision 139954)
+++ gcc/cp/cp-tree.h (revision 139955)
@@ -4381,6 +4381,9 @@ extern void initialize_artificial_var (
extern tree check_var_type (tree, tree);
extern tree reshape_init (tree, tree);
+extern bool defer_mark_used_calls;
+extern GTY(()) VEC(tree, gc) *deferred_mark_used_calls;
+
/* in decl2.c */
extern bool check_java_method (tree);
extern tree build_memfn_type (tree, tree, cp_cv_quals);
--- gcc/testsuite/g++.dg/gomp/pr37189.C (revision 0)
+++ gcc/testsuite/g++.dg/gomp/pr37189.C (revision 139955)
@@ -0,0 +1,27 @@
+// PR c++/37189
+// { dg-do compile }
+// { dg-options "-fopenmp" }
+
+struct S
+{
+ S () {}
+ S (S const &) {}
+};
+
+struct T
+{
+ S s;
+};
+
+void
+bar (T &)
+{
+}
+
+int
+foo ()
+{
+ T t;
+ #pragma omp task
+ bar (t);
+}
++++++ gcc43-x86_64-va_start.patch ++++++
2008-09-02 H.J. Lu
Jakub Jelinek
* config/i386/i386.c (X86_64_VARARGS_SIZE): Removed.
(setup_incoming_varargs_64): Set/check ix86_varargs_gpr_size and
ix86_varargs_fpr_size. Use ix86_varargs_gpr_size instead of
REGPARM_MAX. Don't set ix86_save_varrargs_registers.
(ix86_va_start): Check ix86_varargs_gpr_size and
ix86_varargs_fpr_size instead of cfun->va_list_gpr_size and
cfun->va_list_fpr_size, respectively. Subtract 8*REGPARM_MAX
from frame pointer if ix86_varargs_gpr_size == 0.
(ix86_compute_frame_layout): Updated.
* config/i386/i386.h (ix86_save_varrargs_registers): Removed.
(ix86_varargs_gpr_size): Define.
(ix86_varargs_fpr_size): Likewise.
(machine_function): Remove save_varrargs_registers.
Add varargs_gpr_size and varargs_fpr_size.
* gcc.target/i386/amd64-abi-3.c: New test.
* gcc.target/i386/amd64-abi-4.c: Likewise.
* gcc.target/i386/amd64-abi-5.c: Likewise.
* gcc.target/i386/amd64-abi-6.c: Likewise.
--- gcc/config/i386/i386.h (revision 139909)
+++ gcc/config/i386/i386.h (revision 139910)
@@ -2440,7 +2440,8 @@ struct machine_function GTY(())
struct stack_local_entry *stack_locals;
const char *some_ld_name;
rtx force_align_arg_pointer;
- int save_varrargs_registers;
+ int varargs_gpr_size;
+ int varargs_fpr_size;
int accesses_prev_frame;
int optimize_mode_switching[MAX_386_ENTITIES];
int needs_cld;
@@ -2463,7 +2464,8 @@ struct machine_function GTY(())
};
#define ix86_stack_locals (cfun->machine->stack_locals)
-#define ix86_save_varrargs_registers (cfun->machine->save_varrargs_registers)
+#define ix86_varargs_gpr_size (cfun->machine->varargs_gpr_size)
+#define ix86_varargs_fpr_size (cfun->machine->varargs_fpr_size)
#define ix86_optimize_mode_switching (cfun->machine->optimize_mode_switching)
#define ix86_current_function_needs_cld (cfun->machine->needs_cld)
#define ix86_tls_descriptor_calls_expanded_in_cfun \
--- gcc/config/i386/i386.c (revision 139909)
+++ gcc/config/i386/i386.c (revision 139910)
@@ -1616,9 +1616,6 @@ rtx ix86_compare_op0 = NULL_RTX;
rtx ix86_compare_op1 = NULL_RTX;
rtx ix86_compare_emitted = NULL_RTX;
-/* Size of the register save area. */
-#define X86_64_VARARGS_SIZE (REGPARM_MAX * UNITS_PER_WORD + SSE_REGPARM_MAX * 16)
-
/* Define the structure for the machine field in struct function. */
struct stack_local_entry GTY(())
@@ -4976,11 +4973,22 @@ setup_incoming_varargs_64 (CUMULATIVE_AR
alias_set_type set;
int i;
- if (! cfun->va_list_gpr_size && ! cfun->va_list_fpr_size)
+ /* GPR size of varargs save area. */
+ if (cfun->va_list_gpr_size)
+ ix86_varargs_gpr_size = REGPARM_MAX * UNITS_PER_WORD;
+ else
+ ix86_varargs_gpr_size = 0;
+
+ /* FPR size of varargs save area. We don't need it if we don't pass
+ anything in SSE registers. */
+ if (cum->sse_nregs && cfun->va_list_fpr_size)
+ ix86_varargs_fpr_size = SSE_REGPARM_MAX * 16;
+ else
+ ix86_varargs_fpr_size = 0;
+
+ if (! ix86_varargs_gpr_size && ! ix86_varargs_fpr_size)
return;
- /* Indicate to allocate space on the stack for varargs save area. */
- ix86_save_varrargs_registers = 1;
/* We need 16-byte stack alignment to save SSE registers. If user
asked for lower preferred_stack_boundary, lets just hope that he knows
what he is doing and won't varargs SSE values.
@@ -5006,7 +5014,7 @@ setup_incoming_varargs_64 (CUMULATIVE_AR
x86_64_int_parameter_registers[i]));
}
- if (cum->sse_nregs && cfun->va_list_fpr_size)
+ if (ix86_varargs_fpr_size)
{
/* Now emit code to save SSE registers. The AX parameter contains number
of SSE parameter registers used to call this function. We use
@@ -5041,7 +5049,7 @@ setup_incoming_varargs_64 (CUMULATIVE_AR
tmp_reg = gen_reg_rtx (Pmode);
emit_insn (gen_rtx_SET (VOIDmode, tmp_reg,
plus_constant (save_area,
- 8 * REGPARM_MAX + 127)));
+ ix86_varargs_gpr_size + 127)));
mem = gen_rtx_MEM (BLKmode, plus_constant (tmp_reg, -127));
MEM_NOTRAP_P (mem) = 1;
set_mem_alias_set (mem, set);
@@ -5145,7 +5153,7 @@ ix86_va_start (tree valist, rtx nextarg)
expand_expr (t, const0_rtx, VOIDmode, EXPAND_NORMAL);
}
- if (cfun->va_list_fpr_size)
+ if (TARGET_SSE && cfun->va_list_fpr_size)
{
type = TREE_TYPE (fpr);
t = build2 (GIMPLE_MODIFY_STMT, type, fpr,
@@ -5164,12 +5172,15 @@ ix86_va_start (tree valist, rtx nextarg)
TREE_SIDE_EFFECTS (t) = 1;
expand_expr (t, const0_rtx, VOIDmode, EXPAND_NORMAL);
- if (cfun->va_list_gpr_size || cfun->va_list_fpr_size)
+ if (ix86_varargs_gpr_size || ix86_varargs_fpr_size)
{
/* Find the register save area.
Prologue of the function save it right above stack frame. */
type = TREE_TYPE (sav);
t = make_tree (type, frame_pointer_rtx);
+ if (!ix86_varargs_gpr_size)
+ t = build2 (POINTER_PLUS_EXPR, type, t,
+ size_int (-8 * REGPARM_MAX));
t = build2 (GIMPLE_MODIFY_STMT, type, sav, t);
TREE_SIDE_EFFECTS (t) = 1;
expand_expr (t, const0_rtx, VOIDmode, EXPAND_NORMAL);
@@ -6079,13 +6090,8 @@ ix86_compute_frame_layout (struct ix86_f
offset += frame->nregs * UNITS_PER_WORD;
/* Va-arg area */
- if (ix86_save_varrargs_registers)
- {
- offset += X86_64_VARARGS_SIZE;
- frame->va_arg_size = X86_64_VARARGS_SIZE;
- }
- else
- frame->va_arg_size = 0;
+ frame->va_arg_size = ix86_varargs_gpr_size + ix86_varargs_fpr_size;
+ offset += frame->va_arg_size;
/* Align start of frame for local function. */
frame->padding1 = ((offset + stack_alignment_needed - 1)
--- gcc/testsuite/gcc.target/i386/amd64-abi-3.c (revision 0)
+++ gcc/testsuite/gcc.target/i386/amd64-abi-3.c (revision 139910)
@@ -0,0 +1,18 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-options "-O2 -mno-sse" } */
+/* { dg-final { scan-assembler "subq\[\\t \]*\\\$88,\[\\t \]*%rsp" } } */
+/* { dg-final { scan-assembler-not "subq\[\\t \]*\\\$216,\[\\t \]*%rsp" } } */
+
+#include
+
+void foo (va_list va_arglist);
+
+void
+test (int a1, ...)
+{
+ va_list va_arglist;
+ va_start (va_arglist, a1);
+ foo (va_arglist);
+ va_end (va_arglist);
+}
--- gcc/testsuite/gcc.target/i386/amd64-abi-5.c (revision 0)
+++ gcc/testsuite/gcc.target/i386/amd64-abi-5.c (revision 139910)
@@ -0,0 +1,64 @@
+/* { dg-do run } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-options "-O2" } */
+
+#include
+#include
+
+int n1 = 30;
+double n2 = 324;
+double n3 = 39494.94;
+double n4 = 407;
+double n5 = 32.304;
+double n6 = 394.14;
+double n7 = 4.07;
+double n8 = 32.4;
+double n9 = 314.194;
+double n10 = 0.1407;
+
+int e1;
+double e2;
+double e3;
+double e4;
+double e5;
+double e6;
+double e7;
+double e8;
+double e9;
+double e10;
+
+static void
+__attribute__((noinline))
+test (int a1, ...)
+{
+ e1 = a1;
+ va_list va_arglist;
+ va_start (va_arglist, a1);
+ e2 = va_arg (va_arglist, double);
+ e3 = va_arg (va_arglist, double);
+ e4 = va_arg (va_arglist, double);
+ e5 = va_arg (va_arglist, double);
+ e6 = va_arg (va_arglist, double);
+ e7 = va_arg (va_arglist, double);
+ e8 = va_arg (va_arglist, double);
+ e9 = va_arg (va_arglist, double);
+ e10 = va_arg (va_arglist, double);
+ va_end (va_arglist);
+}
+
+int
+main ()
+{
+ test (n1, n2, n3, n4, n5, n6, n7, n8, n9, n10);
+ assert (n1 == e1);
+ assert (n2 == e2);
+ assert (n3 == e3);
+ assert (n4 == e4);
+ assert (n5 == e5);
+ assert (n6 == e6);
+ assert (n7 == e7);
+ assert (n8 == e8);
+ assert (n9 == e9);
+ assert (n10 == e10);
+ return 0;
+}
--- gcc/testsuite/gcc.target/i386/amd64-abi-4.c (revision 0)
+++ gcc/testsuite/gcc.target/i386/amd64-abi-4.c (revision 139910)
@@ -0,0 +1,47 @@
+/* { dg-do run } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-options "-O2 -mno-sse" } */
+
+#include
+#include
+
+int n1 = 30;
+int n2 = 324;
+void *n3 = (void *) &n2;
+int n4 = 407;
+
+int e1;
+int e2;
+void *e3;
+int e4;
+
+static void
+__attribute__((noinline))
+foo (va_list va_arglist)
+{
+ e2 = va_arg (va_arglist, int);
+ e3 = va_arg (va_arglist, void *);
+ e4 = va_arg (va_arglist, int);
+}
+
+static void
+__attribute__((noinline))
+test (int a1, ...)
+{
+ e1 = a1;
+ va_list va_arglist;
+ va_start (va_arglist, a1);
+ foo (va_arglist);
+ va_end (va_arglist);
+}
+
+int
+main ()
+{
+ test (n1, n2, n3, n4);
+ assert (n1 == e1);
+ assert (n2 == e2);
+ assert (n3 == e3);
+ assert (n4 == e4);
+ return 0;
+}
--- gcc/testsuite/gcc.target/i386/amd64-abi-6.c (revision 0)
+++ gcc/testsuite/gcc.target/i386/amd64-abi-6.c (revision 139910)
@@ -0,0 +1,71 @@
+/* { dg-do run } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-options "-O2" } */
+
+#include
+#include
+
+int n1 = 30;
+double n2 = 324;
+double n3 = 39494.94;
+double n4 = 407;
+double n5 = 32.304;
+double n6 = 394.14;
+double n7 = 4.07;
+double n8 = 32.4;
+double n9 = 314.194;
+double n10 = 0.1407;
+
+int e1;
+double e2;
+double e3;
+double e4;
+double e5;
+double e6;
+double e7;
+double e8;
+double e9;
+double e10;
+
+static void
+__attribute__((noinline))
+foo (va_list va_arglist)
+{
+ e2 = va_arg (va_arglist, double);
+ e3 = va_arg (va_arglist, double);
+ e4 = va_arg (va_arglist, double);
+ e5 = va_arg (va_arglist, double);
+ e6 = va_arg (va_arglist, double);
+ e7 = va_arg (va_arglist, double);
+ e8 = va_arg (va_arglist, double);
+ e9 = va_arg (va_arglist, double);
+ e10 = va_arg (va_arglist, double);
+}
+
+static void
+__attribute__((noinline))
+test (int a1, ...)
+{
+ va_list va_arglist;
+ e1 = a1;
+ va_start (va_arglist, a1);
+ foo (va_arglist);
+ va_end (va_arglist);
+}
+
+int
+main ()
+{
+ test (n1, n2, n3, n4, n5, n6, n7, n8, n9, n10);
+ assert (n1 == e1);
+ assert (n2 == e2);
+ assert (n3 == e3);
+ assert (n4 == e4);
+ assert (n5 == e5);
+ assert (n6 == e6);
+ assert (n7 == e7);
+ assert (n8 == e8);
+ assert (n9 == e9);
+ assert (n10 == e10);
+ return 0;
+}
++++++ gcc.spec.in ++++++
--- gcc43/gcc.spec.in 2008-09-22 16:32:55.000000000 +0200
+++ /mounts/work_src_done/STABLE/gcc43/gcc.spec.in 2008-10-02 18:17:54.000000000 +0200
@@ -123,7 +123,7 @@
URL: http://gcc.gnu.org/
License: GPL
-Version: 4.3.3_20080915
+Version: 4.3.3_20081002
Release: 1
%define gcc_version %(echo %version | sed 's/_.*//')
%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1-2)
@@ -172,17 +172,22 @@
Patch28: pr33763.diff
Patch30: Wunprototyped-calls.diff
Patch31: pr27799.diff
-Patch39: pr36343.diff
Patch40: pr36765.diff
Patch41: fpreserve-function-arguments43.patch
Patch42: pr27975.diff
Patch43: build-id.diff
-Patch44: pr35620.diff
Patch45: nvl423594.patch
# A set of patches from the RH srpm
+Patch50: gcc43-c++-builtin-redecl.patch
Patch51: gcc41-ia64-stack-protector.patch
+Patch52: gcc43-java-debug-iface-type.patch
+Patch53: gcc43-libgomp-omp_h-multilib.patch
+Patch54: gcc43-pr34037.patch
Patch55: gcc41-java-slow_pthread_self.patch
+Patch56: gcc43-pr36741-revert.patch
Patch57: gcc41-ppc32-retaddr.patch
+Patch58: gcc43-pr37189.patch
+Patch59: gcc43-x86_64-va_start.patch
# Some patches taken from Debian
Patch60: gcc43-textdomain.patch
Patch61: gcc43-rename-info-files.patch
@@ -218,12 +223,10 @@
Patch104: ibm-cell-split
Patch105: ibm-cell-split-fixes
Patch106: nvl425806.patch
-Patch107: nvl425803.patch
Patch109: nvl425783.patch
Patch110: nvl425784.patch
Patch111: nvl425788.patch
Patch112: nvl425789.patch
-Patch113: nvl425790.patch
Patch114: nvl425791.patch
Patch115: nvl425794.patch
Patch116: nvl425798-1.patch
@@ -890,18 +893,23 @@
%patch28
%patch30
%patch31
-%patch39
%patch40
%patch41
%patch42
%if 0%{suse_version} > 1100
%patch43
%endif
-%patch44
%patch45
+%patch50
%patch51
+%patch52
+%patch53
+%patch54
%patch55
+%patch56
%patch57
+%patch58
+%patch59
%patch60
%patch61
%patch70
@@ -933,12 +941,10 @@
%patch104 -p1
%patch105 -p1
%patch106
-%patch107
%patch109
%patch110
%patch111
%patch112
-%patch113
%patch114
%patch115
%patch116
@@ -1083,6 +1089,7 @@
%if !%{build_libjava}
--disable-libgcj \
%else
+ --with-java-home=%{_libdir}/jvm/java-1.5.0-gcj%{binsuffix}-1.5.0.0/jre \
--with-ecj-jar=%{libsubdir}/ecj.jar \
--enable-java-awt=gtk \
--enable-gtk-cairo \
++++++ ibm304071-z10-8 ++++++
--- /var/tmp/diff_new_pack.cq3818/_old 2008-10-13 15:52:44.000000000 +0200
+++ /var/tmp/diff_new_pack.cq3818/_new 2008-10-13 15:52:44.000000000 +0200
@@ -1,13 +1,12 @@
Index: gcc/doc/invoke.texi
===================================================================
---- gcc/doc/invoke.texi.orig 2008-09-18 13:31:58.000000000 +0200
-+++ gcc/doc/invoke.texi 2008-09-18 13:34:21.000000000 +0200
-@@ -13733,7 +13733,8 @@ The default is to not print debug inform
- @opindex march
+--- gcc/doc/invoke.texi.orig 2008-10-02 15:06:53.000000000 +0200
++++ gcc/doc/invoke.texi 2008-10-02 15:07:36.000000000 +0200
+@@ -13746,7 +13746,7 @@ The default is to not print debug inform
Generate code that will run on @var{cpu-type}, which is the name of a system
representing a certain processor type. Possible values for
--@var{cpu-type} are @samp{g5}, @samp{g6}, @samp{z900}, and @samp{z990}.
-+@var{cpu-type} are @samp{g5}, @samp{g6}, @samp{z900}, and @samp{z990},
+ @var{cpu-type} are @samp{g5}, @samp{g6}, @samp{z900}, @samp{z990},
+-@samp{z9-109} and @samp{z9-ec}.
+@samp{z9-109}, @samp{z9-ec} and @samp{z10}.
When generating code using the instructions available on z/Architecture,
the default is @option{-march=z900}. Otherwise, the default is
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org