19 files changed:
-Index: gcc-4.1.2/gcc/fold-const.c
-===================================================================
---- gcc-4.1.2.orig/gcc/fold-const.c 2007-11-21 18:53:42.000000000 +0100
-+++ gcc-4.1.2/gcc/fold-const.c 2007-11-21 18:56:26.000000000 +0100
-@@ -5339,7 +5339,10 @@
+--- a/gcc/fold-const.c
++++ b/gcc/fold-const.c
+@@ -5339,7 +5339,10 @@ extract_muldiv_1 (tree t, tree c, enum t
---- gcc-4.1.0/gcc/config/t-linux-uclibc
-+++ gcc-4.1.0/gcc/config/t-linux-uclibc
+--- /dev/null
++++ b/gcc/config/t-linux-uclibc
@@ -0,0 +1,5 @@
+# Remove glibc specific files added in t-linux
+SHLIB_MAPFILES := $(filter-out $(srcdir)/config/libgcc-glibc.ver, $(SHLIB_MAPFILES))
+
+# Use unwind-dw2-fde instead of unwind-dw2-fde-glibc
+LIB2ADDEH := $(subst unwind-dw2-fde-glibc.c,unwind-dw2-fde.c,$(LIB2ADDEH))
@@ -0,0 +1,5 @@
+# Remove glibc specific files added in t-linux
+SHLIB_MAPFILES := $(filter-out $(srcdir)/config/libgcc-glibc.ver, $(SHLIB_MAPFILES))
+
+# Use unwind-dw2-fde instead of unwind-dw2-fde-glibc
+LIB2ADDEH := $(subst unwind-dw2-fde-glibc.c,unwind-dw2-fde.c,$(LIB2ADDEH))
---- gcc-4.1.0/gcc/config.gcc
-+++ gcc-4.1.0/gcc/config.gcc
-@@ -1887,7 +1887,7 @@ s390x-ibm-tpf*)
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
+@@ -1884,7 +1884,7 @@ s390x-ibm-tpf*)
;;
sh-*-elf* | sh[12346l]*-*-elf* | sh*-*-kaos* | \
sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
;;
sh-*-elf* | sh[12346l]*-*-elf* | sh*-*-kaos* | \
sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
sh64-*-netbsd* | sh64l*-*-netbsd*)
tmake_file="${tmake_file} sh/t-sh sh/t-elf"
sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
sh64-*-netbsd* | sh64l*-*-netbsd*)
tmake_file="${tmake_file} sh/t-sh sh/t-elf"
-@@ -2341,6 +2341,12 @@ m32c-*-elf*)
+@@ -2338,6 +2338,12 @@ m32c-*-elf*)
case ${target} in
i[34567]86-*-linux*aout* | i[34567]86-*-linux*libc1)
tmake_file="${tmake_file} i386/t-gmm_malloc"
case ${target} in
i[34567]86-*-linux*aout* | i[34567]86-*-linux*libc1)
tmake_file="${tmake_file} i386/t-gmm_malloc"
---- gcc-4.1.0/boehm-gc/configure
-+++ gcc-4.1.0/boehm-gc/configure
+--- a/boehm-gc/configure
++++ b/boehm-gc/configure
@@ -4320,6 +4320,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -4320,6 +4320,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
---- gcc-4.1.0/configure
-+++ gcc-4.1.0/configure
+--- a/configure
++++ b/configure
@@ -1133,7 +1133,7 @@ no)
;;
"")
@@ -1133,7 +1133,7 @@ no)
;;
"")
# Enable libmudflap by default in GNU and friends.
;;
*-*-freebsd*)
# Enable libmudflap by default in GNU and friends.
;;
*-*-freebsd*)
---- gcc-4.1.0/configure.in
-+++ gcc-4.1.0/configure.in
+--- a/configure.in
++++ b/configure.in
@@ -341,7 +341,7 @@ no)
;;
"")
@@ -341,7 +341,7 @@ no)
;;
"")
# Enable libmudflap by default in GNU and friends.
;;
*-*-freebsd*)
# Enable libmudflap by default in GNU and friends.
;;
*-*-freebsd*)
---- gcc-4.1.0/contrib/regression/objs-gcc.sh
-+++ gcc-4.1.0/contrib/regression/objs-gcc.sh
+--- a/contrib/regression/objs-gcc.sh
++++ b/contrib/regression/objs-gcc.sh
@@ -105,6 +105,10 @@ if [ $H_REAL_TARGET = $H_REAL_HOST -a $H
then
make all-gdb all-dejagnu all-ld || exit 1
@@ -105,6 +105,10 @@ if [ $H_REAL_TARGET = $H_REAL_HOST -a $H
then
make all-gdb all-dejagnu all-ld || exit 1
elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then
make bootstrap || exit 1
make install || exit 1
elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then
make bootstrap || exit 1
make install || exit 1
---- gcc-4.1.0/gcc/config/alpha/linux-elf.h
-+++ gcc-4.1.0/gcc/config/alpha/linux-elf.h
+--- a/gcc/config/alpha/linux-elf.h
++++ b/gcc/config/alpha/linux-elf.h
@@ -27,7 +27,11 @@ Boston, MA 02110-1301, USA. */
#define SUBTARGET_EXTRA_SPECS \
{ "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
@@ -27,7 +27,11 @@ Boston, MA 02110-1301, USA. */
#define SUBTARGET_EXTRA_SPECS \
{ "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
%{O*:-O3} %{!O*:-O1} \
#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
%{O*:-O3} %{!O*:-O1} \
---- gcc-4.1.0/gcc/config/arm/linux-elf.h
-+++ gcc-4.1.0/gcc/config/arm/linux-elf.h
+--- a/gcc/config/arm/linux-elf.h
++++ b/gcc/config/arm/linux-elf.h
@@ -51,7 +51,11 @@
#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
@@ -51,7 +51,11 @@
#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
#define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \
%{b} \
#define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \
%{b} \
---- gcc-4.1.0/gcc/config/cris/linux.h
-+++ gcc-4.1.0/gcc/config/cris/linux.h
+--- a/gcc/config/cris/linux.h
++++ b/gcc/config/cris/linux.h
@@ -73,6 +73,25 @@ Boston, MA 02110-1301, USA. */
#undef CRIS_DEFAULT_CPU_VERSION
#define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
@@ -73,6 +73,25 @@ Boston, MA 02110-1301, USA. */
#undef CRIS_DEFAULT_CPU_VERSION
#define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
/* Node: Run-time Target */
/* Node: Run-time Target */
---- gcc-4.1.0/gcc/config/i386/linux.h
-+++ gcc-4.1.0/gcc/config/i386/linux.h
+--- a/gcc/config/i386/linux.h
++++ b/gcc/config/i386/linux.h
@@ -107,6 +107,11 @@ Boston, MA 02110-1301, USA. */
#define LINK_EMULATION "elf_i386"
#define DYNAMIC_LINKER "/lib/ld-linux.so.2"
@@ -107,6 +107,11 @@ Boston, MA 02110-1301, USA. */
#define LINK_EMULATION "elf_i386"
#define DYNAMIC_LINKER "/lib/ld-linux.so.2"
#undef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS \
{ "link_emulation", LINK_EMULATION },\
#undef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS \
{ "link_emulation", LINK_EMULATION },\
---- gcc-4.1.0/gcc/config/i386/linux64.h
-+++ gcc-4.1.0/gcc/config/i386/linux64.h
+--- a/gcc/config/i386/linux64.h
++++ b/gcc/config/i386/linux64.h
@@ -54,14 +54,21 @@ Boston, MA 02110-1301, USA. */
When the -shared link option is used a final link is not being
done. */
@@ -54,14 +54,21 @@ Boston, MA 02110-1301, USA. */
When the -shared link option is used a final link is not being
done. */
%{static:-static}}"
/* Similar to standard Linux, but adding -ffast-math support. */
%{static:-static}}"
/* Similar to standard Linux, but adding -ffast-math support. */
---- gcc-4.1.0/gcc/config/ia64/linux.h
-+++ gcc-4.1.0/gcc/config/ia64/linux.h
+--- a/gcc/config/ia64/linux.h
++++ b/gcc/config/ia64/linux.h
@@ -37,13 +37,18 @@ do { \
/* Define this for shared library support because it isn't in the main
linux.h file. */
@@ -37,13 +37,18 @@ do { \
/* Define this for shared library support because it isn't in the main
linux.h file. */
+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
%{static:-static}}"
+ %{!dynamic-linker:-dynamic-linker " ELF_DYNAMIC_LINKER "}} \
%{static:-static}}"
-
---- gcc-4.1.0/gcc/config/m68k/linux.h
-+++ gcc-4.1.0/gcc/config/m68k/linux.h
+ #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
+--- a/gcc/config/m68k/linux.h
++++ b/gcc/config/m68k/linux.h
@@ -123,12 +123,17 @@ Boston, MA 02110-1301, USA. */
/* If ELF is the default format, we should not use /lib/elf. */
@@ -123,12 +123,17 @@ Boston, MA 02110-1301, USA. */
/* If ELF is the default format, we should not use /lib/elf. */
%{static}}"
/* For compatibility with linux/a.out */
%{static}}"
/* For compatibility with linux/a.out */
---- gcc-4.1.0/gcc/config/mips/linux.h
-+++ gcc-4.1.0/gcc/config/mips/linux.h
+--- a/gcc/config/mips/linux.h
++++ b/gcc/config/mips/linux.h
@@ -105,6 +105,11 @@ Boston, MA 02110-1301, USA. */
/* Borrowed from sparc/linux.h */
@@ -105,6 +105,11 @@ Boston, MA 02110-1301, USA. */
/* Borrowed from sparc/linux.h */
%{static:-static}}}"
#undef SUBTARGET_ASM_SPEC
%{static:-static}}}"
#undef SUBTARGET_ASM_SPEC
---- gcc-4.1.0/gcc/config/pa/pa-linux.h
-+++ gcc-4.1.0/gcc/config/pa/pa-linux.h
+--- a/gcc/config/pa/pa-linux.h
++++ b/gcc/config/pa/pa-linux.h
@@ -49,13 +49,18 @@ Boston, MA 02110-1301, USA. */
/* Define this for shared library support because it isn't in the main
linux.h file. */
@@ -49,13 +49,18 @@ Boston, MA 02110-1301, USA. */
/* Define this for shared library support because it isn't in the main
linux.h file. */
%{static:-static}}"
/* glibc's profiling functions don't need gcc to allocate counters. */
%{static:-static}}"
/* glibc's profiling functions don't need gcc to allocate counters. */
---- gcc-4.1.0/gcc/config/rs6000/linux.h
-+++ gcc-4.1.0/gcc/config/rs6000/linux.h
+--- a/gcc/config/rs6000/linux.h
++++ b/gcc/config/rs6000/linux.h
@@ -72,7 +72,11 @@
#define LINK_START_DEFAULT_SPEC "%(link_start_linux)"
@@ -72,7 +72,11 @@
#define LINK_START_DEFAULT_SPEC "%(link_start_linux)"
#define LINK_GCC_C_SEQUENCE_SPEC \
"%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
#define LINK_GCC_C_SEQUENCE_SPEC \
"%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
---- gcc-4.1.0/gcc/config/rs6000/sysv4.h
-+++ gcc-4.1.0/gcc/config/rs6000/sysv4.h
+--- a/gcc/config/rs6000/sysv4.h
++++ b/gcc/config/rs6000/sysv4.h
@@ -866,6 +866,7 @@ extern int fixuplabelno;
mcall-linux : %(link_os_linux) ; \
mcall-gnu : %(link_os_gnu) ; \
@@ -866,6 +866,7 @@ extern int fixuplabelno;
mcall-linux : %(link_os_linux) ; \
mcall-gnu : %(link_os_gnu) ; \
{ "link_os_gnu", LINK_OS_GNU_SPEC }, \
{ "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \
{ "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \
{ "link_os_gnu", LINK_OS_GNU_SPEC }, \
{ "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \
{ "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \
---- gcc-4.1.0/gcc/config/s390/linux.h
-+++ gcc-4.1.0/gcc/config/s390/linux.h
+--- a/gcc/config/s390/linux.h
++++ b/gcc/config/s390/linux.h
@@ -77,6 +77,13 @@ Software Foundation, 51 Franklin Street,
#define MULTILIB_DEFAULTS { "m31" }
#endif
@@ -77,6 +77,13 @@ Software Foundation, 51 Franklin Street,
#define MULTILIB_DEFAULTS { "m31" }
#endif
+ %{m31:-dynamic-linker " ELF31_DYNAMIC_LINKER "} \
+ %{m64:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}}}"
+ %{m31:-dynamic-linker " ELF31_DYNAMIC_LINKER "} \
+ %{m64:-dynamic-linker " ELF64_DYNAMIC_LINKER "}}}}"
+ #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
- #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
---- gcc-4.1.0/gcc/config/sh/linux.h
-+++ gcc-4.1.0/gcc/config/sh/linux.h
+--- a/gcc/config/sh/linux.h
++++ b/gcc/config/sh/linux.h
@@ -56,12 +56,21 @@ Boston, MA 02110-1301, USA. */
#undef SUBTARGET_LINK_EMUL_SUFFIX
#define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
@@ -56,12 +56,21 @@ Boston, MA 02110-1301, USA. */
#undef SUBTARGET_LINK_EMUL_SUFFIX
#define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
/* Output assembler code to STREAM to call the profiler. */
/* Output assembler code to STREAM to call the profiler. */
---- gcc-4.1.0/gcc/config/sparc/linux.h
-+++ gcc-4.1.0/gcc/config/sparc/linux.h
+--- a/gcc/config/sparc/linux.h
++++ b/gcc/config/sparc/linux.h
@@ -125,6 +125,11 @@ Boston, MA 02110-1301, USA. */
/* If ELF is the default format, we should not use /lib/elf. */
@@ -125,6 +125,11 @@ Boston, MA 02110-1301, USA. */
/* If ELF is the default format, we should not use /lib/elf. */
%{static:-static}}}"
/* The sun bundled assembler doesn't accept -Yd, (and neither does gas).
%{static:-static}}}"
/* The sun bundled assembler doesn't accept -Yd, (and neither does gas).
---- gcc-4.1.0/gcc/config/sparc/linux64.h
-+++ gcc-4.1.0/gcc/config/sparc/linux64.h
+--- a/gcc/config/sparc/linux64.h
++++ b/gcc/config/sparc/linux64.h
@@ -162,12 +162,17 @@ Boston, MA 02110-1301, USA. */
{ "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
{ "link_arch", LINK_ARCH_SPEC },
@@ -162,12 +162,17 @@ Boston, MA 02110-1301, USA. */
{ "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
{ "link_arch", LINK_ARCH_SPEC },
---- gcc-4.1.0/libffi/configure
-+++ gcc-4.1.0/libffi/configure
+--- a/libffi/configure
++++ b/libffi/configure
@@ -3457,6 +3457,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -3457,6 +3457,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
---- gcc-4.1.0/libgfortran/configure
-+++ gcc-4.1.0/libgfortran/configure
+--- a/libgfortran/configure
++++ b/libgfortran/configure
@@ -3699,6 +3699,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -3699,6 +3699,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
---- gcc-4.1.0/libjava/configure
-+++ gcc-4.1.0/libjava/configure
+--- a/libjava/configure
++++ b/libjava/configure
@@ -5137,6 +5137,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -5137,6 +5137,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
---- gcc-4.1.0/libmudflap/configure
-+++ gcc-4.1.0/libmudflap/configure
+--- a/libmudflap/configure
++++ b/libmudflap/configure
@@ -5382,6 +5382,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -5382,6 +5382,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
---- gcc-4.1.0/libobjc/configure
-+++ gcc-4.1.0/libobjc/configure
+--- a/libobjc/configure
++++ b/libobjc/configure
@@ -3312,6 +3312,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -3312,6 +3312,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
---- gcc-4.1.0/libtool.m4
-+++ gcc-4.1.0/libtool.m4
+--- a/libtool.m4
++++ b/libtool.m4
@@ -743,6 +743,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -743,6 +743,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
[lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
[lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
---- gcc-4.1.0/ltconfig
-+++ gcc-4.1.0/ltconfig
+--- a/ltconfig
++++ b/ltconfig
@@ -603,6 +603,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
@@ -603,6 +603,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
netbsd*)
need_lib_prefix=no
need_version=no
netbsd*)
need_lib_prefix=no
need_version=no
---- gcc-4.1.0/zlib/configure
-+++ gcc-4.1.0/zlib/configure
+--- a/zlib/configure
++++ b/zlib/configure
@@ -3426,6 +3426,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -3426,6 +3426,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
---- gcc-2005q3-1.orig/gcc/config.gcc 2005-10-31 19:02:54.000000000 +0300
-+++ gcc-2005q3-1/gcc/config.gcc 2006-01-27 01:09:09.000000000 +0300
-@@ -674,7 +674,7 @@
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
+@@ -674,7 +674,7 @@ arm*-*-linux*) # ARM GNU/Linux with EL
tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h"
tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h"
- tmake_file="t-slibgcc-elf-ver t-linux arm/t-arm"
+ tmake_file="${tmake_file} t-linux arm/t-arm"
case ${target} in
- arm*-*-linux-gnueabi)
+ arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi)
tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi"
# The BPABI long long divmod functions return a 128-bit value in
case ${target} in
- arm*-*-linux-gnueabi)
+ arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi)
tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi"
# The BPABI long long divmod functions return a 128-bit value in
-
-diff -urN gcc-2005q3-2/gcc/config/arm/linux-eabi.h gcc-2005q3-2.new/gcc/config/arm/linux-eabi.h
---- gcc-2005q3-2/gcc/config/arm/linux-eabi.h 2005-12-07 23:14:16.000000000 +0300
-+++ gcc-2005q3-2.new/gcc/config/arm/linux-eabi.h 2006-03-29 19:02:34.000000000 +0400
+--- a/gcc/config/arm/linux-eabi.h
++++ b/gcc/config/arm/linux-eabi.h
@@ -53,7 +53,11 @@
/* Use ld-linux.so.3 so that it will be possible to run "classic"
GNU/Linux binaries on an EABI system. */
@@ -53,7 +53,11 @@
/* Use ld-linux.so.3 so that it will be possible to run "classic"
GNU/Linux binaries on an EABI system. */
-diff -ruN gcc-4.1.2.orig/gcc/config/cris/t-linux gcc-4.1.2/gcc/config/cris/t-linux
---- gcc-4.1.2.orig/gcc/config/cris/t-linux 2005-10-12 21:40:28.000000000 +0200
-+++ gcc-4.1.2/gcc/config/cris/t-linux 2009-01-12 14:52:34.669331678 +0100
+--- a/gcc/config/cris/t-linux
++++ b/gcc/config/cris/t-linux
@@ -1,6 +1,2 @@
TARGET_LIBGCC2_CFLAGS += -fPIC
CRTSTUFF_T_CFLAGS_S = $(TARGET_LIBGCC2_CFLAGS)
@@ -1,6 +1,2 @@
TARGET_LIBGCC2_CFLAGS += -fPIC
CRTSTUFF_T_CFLAGS_S = $(TARGET_LIBGCC2_CFLAGS)
---- gcc-4.1.0-dist/libstdc++-v3/acinclude.m4
-+++ gcc-4.1.0/libstdc++-v3/acinclude.m4
-@@ -1071,7 +1071,7 @@
+--- a/libstdc++-v3/acinclude.m4
++++ b/libstdc++-v3/acinclude.m4
+@@ -1003,7 +1003,7 @@ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [
AC_MSG_CHECKING([for C locale to use])
GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@],
[use MODEL for target locale package],
AC_MSG_CHECKING([for C locale to use])
GLIBCXX_ENABLE(clocale,auto,[@<:@=MODEL@:>@],
[use MODEL for target locale package],
# If they didn't use this option switch, or if they specified --enable
# with no specific model, we'll have to look for one. If they
# If they didn't use this option switch, or if they specified --enable
# with no specific model, we'll have to look for one. If they
+@@ -1019,6 +1019,9 @@ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [
# Default to "generic".
if test $enable_clocale_flag = auto; then
case ${target_os} in
# Default to "generic".
if test $enable_clocale_flag = auto; then
case ${target_os} in
linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
AC_EGREP_CPP([_GLIBCXX_ok], [
#include <features.h>
linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
AC_EGREP_CPP([_GLIBCXX_ok], [
#include <features.h>
+@@ -1162,6 +1165,40 @@ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [
CTIME_CC=config/locale/generic/time_members.cc
CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
;;
CTIME_CC=config/locale/generic/time_members.cc
CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
;;
esac
# This is where the testsuite looks for locale catalogs, using the
esac
# This is where the testsuite looks for locale catalogs, using the
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
@@ -0,0 +1,63 @@
+// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*-
+
@@ -0,0 +1,63 @@
+// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*-
+
+#endif
+
+#endif // GLIBC 2.3 and later
+#endif
+
+#endif // GLIBC 2.3 and later
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/c_locale.cc
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.cc
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/c_locale.cc
@@ -0,0 +1,152 @@
+// Wrapper for underlying C-language localization -*- C++ -*-
+
@@ -0,0 +1,152 @@
+// Wrapper for underlying C-language localization -*- C++ -*-
+
+{
+ const char* const* const locale::_S_categories = __gnu_cxx::category_names;
+} // namespace std
+{
+ const char* const* const locale::_S_categories = __gnu_cxx::category_names;
+} // namespace std
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/c_locale.h
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/c_locale.h
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/c_locale.h
@@ -0,0 +1,117 @@
+// Wrapper for underlying C-language localization -*- C++ -*-
+
@@ -0,0 +1,117 @@
+// Wrapper for underlying C-language localization -*- C++ -*-
+
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/codecvt_members.cc
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/codecvt_members.cc
@@ -0,0 +1,306 @@
+// std::codecvt implementation details, GNU version -*- C++ -*-
+
@@ -0,0 +1,306 @@
+// std::codecvt implementation details, GNU version -*- C++ -*-
+
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/collate_members.cc
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/collate_members.cc
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/collate_members.cc
@@ -0,0 +1,80 @@
+// std::collate implementation details, GNU version -*- C++ -*-
+
@@ -0,0 +1,80 @@
+// std::collate implementation details, GNU version -*- C++ -*-
+
+ { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); }
+#endif
+}
+ { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); }
+#endif
+}
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/ctype_members.cc
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/ctype_members.cc
@@ -0,0 +1,314 @@
+// std::ctype implementation details, GNU version -*- C++ -*-
+
@@ -0,0 +1,314 @@
+// std::ctype implementation details, GNU version -*- C++ -*-
+
+ }
+#endif // _GLIBCXX_USE_WCHAR_T
+}
+ }
+#endif // _GLIBCXX_USE_WCHAR_T
+}
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/messages_members.cc
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.cc
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/messages_members.cc
@@ -0,0 +1,100 @@
+// std::messages implementation details, GNU version -*- C++ -*-
+
@@ -0,0 +1,100 @@
+// std::messages implementation details, GNU version -*- C++ -*-
+
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/messages_members.h
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/messages_members.h
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/messages_members.h
@@ -0,0 +1,121 @@
+// std::messages implementation details, GNU version -*- C++ -*-
+
@@ -0,0 +1,121 @@
+// std::messages implementation details, GNU version -*- C++ -*-
+
+ this->_S_create_c_locale(this->_M_c_locale_messages, __s);
+ }
+ }
+ this->_S_create_c_locale(this->_M_c_locale_messages, __s);
+ }
+ }
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/monetary_members.cc
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/monetary_members.cc
@@ -0,0 +1,692 @@
+// std::moneypunct implementation details, GNU version -*- C++ -*-
+
@@ -0,0 +1,692 @@
+// std::moneypunct implementation details, GNU version -*- C++ -*-
+
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/numeric_members.cc
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/numeric_members.cc
@@ -0,0 +1,173 @@
+// std::numpunct implementation details, GNU version -*- C++ -*-
+
@@ -0,0 +1,173 @@
+// std::numpunct implementation details, GNU version -*- C++ -*-
+
+ { delete _M_data; }
+ #endif
+}
+ { delete _M_data; }
+ #endif
+}
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/time_members.cc
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.cc
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/time_members.cc
@@ -0,0 +1,406 @@
+// std::time_get, std::time_put implementation, GNU version -*- C++ -*-
+
@@ -0,0 +1,406 @@
+// std::time_get, std::time_put implementation, GNU version -*- C++ -*-
+
---- gcc-4.1.0-dist/libstdc++-v3/config/locale/uclibc/time_members.h
-+++ gcc-4.1.0/libstdc++-v3/config/locale/uclibc/time_members.h
+--- /dev/null
++++ b/libstdc++-v3/config/locale/uclibc/time_members.h
@@ -0,0 +1,76 @@
+// std::time_get, std::time_put implementation, GNU version -*- C++ -*-
+
@@ -0,0 +1,76 @@
+// std::time_get, std::time_put implementation, GNU version -*- C++ -*-
+
+ delete _M_data;
+ _S_destroy_c_locale(_M_c_locale_timepunct);
+ }
+ delete _M_data;
+ _S_destroy_c_locale(_M_c_locale_timepunct);
+ }
---- gcc-4.1.0-dist/libstdc++-v3/config/os/uclibc/ctype_base.h
-+++ gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_base.h
+--- /dev/null
++++ b/libstdc++-v3/config/os/uclibc/ctype_base.h
@@ -0,0 +1,64 @@
+// Locale support -*- C++ -*-
+
@@ -0,0 +1,64 @@
+// Locale support -*- C++ -*-
+
+ static const mask punct = _ISpunct;
+ static const mask alnum = _ISalpha | _ISdigit;
+ };
+ static const mask punct = _ISpunct;
+ static const mask alnum = _ISalpha | _ISdigit;
+ };
---- gcc-4.1.0-dist/libstdc++-v3/config/os/uclibc/ctype_inline.h
-+++ gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_inline.h
+--- /dev/null
++++ b/libstdc++-v3/config/os/uclibc/ctype_inline.h
@@ -0,0 +1,69 @@
+// Locale support -*- C++ -*-
+
@@ -0,0 +1,69 @@
+// Locale support -*- C++ -*-
+
+ ++__low;
+ return __low;
+ }
+ ++__low;
+ return __low;
+ }
---- gcc-4.1.0-dist/libstdc++-v3/config/os/uclibc/ctype_noninline.h
-+++ gcc-4.1.0/libstdc++-v3/config/os/uclibc/ctype_noninline.h
+--- /dev/null
++++ b/libstdc++-v3/config/os/uclibc/ctype_noninline.h
@@ -0,0 +1,92 @@
+// Locale support -*- C++ -*-
+
@@ -0,0 +1,92 @@
+// Locale support -*- C++ -*-
+
---- gcc-4.1.0-dist/libstdc++-v3/config/os/uclibc/os_defines.h
-+++ gcc-4.1.0/libstdc++-v3/config/os/uclibc/os_defines.h
+--- /dev/null
++++ b/libstdc++-v3/config/os/uclibc/os_defines.h
@@ -0,0 +1,44 @@
+// Specific definitions for GNU/Linux -*- C++ -*-
+
@@ -0,0 +1,44 @@
+// Specific definitions for GNU/Linux -*- C++ -*-
+
+#define __NO_STRING_INLINES
+
+#endif
+#define __NO_STRING_INLINES
+
+#endif
---- gcc-4.1.0-dist/libstdc++-v3/configure
-+++ gcc-4.1.0/libstdc++-v3/configure
-@@ -4005,6 +4005,11 @@
+--- a/libstdc++-v3/configure
++++ b/libstdc++-v3/configure
+@@ -4005,6 +4005,11 @@ linux-gnu*)
lt_cv_deplibs_check_method=pass_all
;;
lt_cv_deplibs_check_method=pass_all
;;
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
netbsd* | knetbsd*-gnu)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
+@@ -5740,7 +5745,7 @@ if test "${enable_clocale+set}" = set; t
enableval="$enable_clocale"
case "$enableval" in
enableval="$enable_clocale"
case "$enableval" in
*) { { echo "$as_me:$LINENO: error: Unknown argument to enable/disable clocale" >&5
echo "$as_me: error: Unknown argument to enable/disable clocale" >&2;}
{ (exit 1); exit 1; }; } ;;
*) { { echo "$as_me:$LINENO: error: Unknown argument to enable/disable clocale" >&5
echo "$as_me: error: Unknown argument to enable/disable clocale" >&2;}
{ (exit 1); exit 1; }; } ;;
+@@ -5765,6 +5770,9 @@ fi;
# Default to "generic".
if test $enable_clocale_flag = auto; then
case ${target_os} in
# Default to "generic".
if test $enable_clocale_flag = auto; then
case ${target_os} in
linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
+@@ -5995,6 +6003,76 @@ echo "${ECHO_T}IEEE 1003.1" >&6
CTIME_CC=config/locale/generic/time_members.cc
CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
;;
CTIME_CC=config/locale/generic/time_members.cc
CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
;;
esac
# This is where the testsuite looks for locale catalogs, using the
esac
# This is where the testsuite looks for locale catalogs, using the
---- gcc-4.1.0-dist/libstdc++-v3/configure.host
-+++ gcc-4.1.0/libstdc++-v3/configure.host
-@@ -261,6 +261,12 @@
+--- a/libstdc++-v3/configure.host
++++ b/libstdc++-v3/configure.host
+@@ -270,6 +270,12 @@ case "${host_os}" in
# Set any OS-dependent and CPU-dependent bits.
# THIS TABLE IS SORTED. KEEP IT THAT WAY.
# Set any OS-dependent and CPU-dependent bits.
# THIS TABLE IS SORTED. KEEP IT THAT WAY.
---- gcc-4.1.0-dist/libstdc++-v3/crossconfig.m4
-+++ gcc-4.1.0/libstdc++-v3/crossconfig.m4
-@@ -143,6 +143,99 @@
+--- a/libstdc++-v3/crossconfig.m4
++++ b/libstdc++-v3/crossconfig.m4
+@@ -143,6 +143,99 @@ case "${host}" in
*-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu)
AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \
machine/endian.h machine/param.h sys/machine.h sys/types.h \
*-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu)
AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \
machine/endian.h machine/param.h sys/machine.h sys/types.h \
+@@ -157,7 +250,7 @@ case "${host}" in
AC_DEFINE(HAVE_INT64_T)
case "$target" in
*-uclinux*)
AC_DEFINE(HAVE_INT64_T)
case "$target" in
*-uclinux*)
;;
*)
AC_DEFINE(_GLIBCXX_USE_LFS)
;;
*)
AC_DEFINE(_GLIBCXX_USE_LFS)
---- gcc-4.1.0-dist/libstdc++-v3/include/c_compatibility/wchar.h
-+++ gcc-4.1.0/libstdc++-v3/include/c_compatibility/wchar.h
-@@ -101,7 +101,9 @@
+--- a/libstdc++-v3/include/c_compatibility/wchar.h
++++ b/libstdc++-v3/include/c_compatibility/wchar.h
+@@ -101,7 +101,9 @@ using std::wmemcmp;
using std::wmemcpy;
using std::wmemmove;
using std::wmemset;
using std::wmemcpy;
using std::wmemmove;
using std::wmemset;
#if _GLIBCXX_USE_C99
using std::wcstold;
#if _GLIBCXX_USE_C99
using std::wcstold;
---- gcc-4.1.0-dist/libstdc++-v3/include/c_std/std_cwchar.h
-+++ gcc-4.1.0/libstdc++-v3/include/c_std/std_cwchar.h
-@@ -180,7 +180,9 @@
+--- a/libstdc++-v3/include/c_std/std_cwchar.h
++++ b/libstdc++-v3/include/c_std/std_cwchar.h
+@@ -180,7 +180,9 @@ namespace std
using ::wcscoll;
using ::wcscpy;
using ::wcscspn;
using ::wcscoll;
using ::wcscpy;
using ::wcscspn;
# DP: Build and install libstdc++_pic.a library.
# DP: Build and install libstdc++_pic.a library.
---- gcc/libstdc++-v3/src/Makefile.am
-+++ gcc/libstdc++-v3/src/Makefile.am
-@@ -214,6 +214,12 @@
+--- a/libstdc++-v3/src/Makefile.am
++++ b/libstdc++-v3/src/Makefile.am
+@@ -234,6 +234,12 @@ CXXLINK = $(LIBTOOL) --tag CXX --mode=li
$(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LDFLAGS) -o $@
$(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LDFLAGS) -o $@
# Added bits to build debug library.
if GLIBCXX_BUILD_DEBUG
all-local: build_debug
# Added bits to build debug library.
if GLIBCXX_BUILD_DEBUG
all-local: build_debug
---- gcc/libstdc++-v3/src/Makefile.in
-+++ gcc/libstdc++-v3/src/Makefile.in
-@@ -627,7 +627,7 @@
+--- a/libstdc++-v3/src/Makefile.in
++++ b/libstdc++-v3/src/Makefile.in
+@@ -627,7 +627,7 @@ info-am:
install-data-am: install-data-local
install-data-am: install-data-local
install-info: install-info-am
install-info: install-info-am
+@@ -660,6 +660,7 @@ uninstall-am: uninstall-info-am uninstal
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-data-local install-exec \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-data-local install-exec \
install-exec-am install-info install-info-am install-man \
install-strip install-toolexeclibLTLIBRARIES installcheck \
installcheck-am installdirs maintainer-clean \
install-exec-am install-info install-info-am install-man \
install-strip install-toolexeclibLTLIBRARIES installcheck \
installcheck-am installdirs maintainer-clean \
+@@ -760,6 +761,13 @@ build_debug: stamp-debug
install_debug:
(cd ${debugdir} && $(MAKE) \
toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install)
install_debug:
(cd ${debugdir} && $(MAKE) \
toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install)
---- gcc-4.0.0/boehm-gc/include/gc.h-orig 2005-04-28 22:28:57.000000000 -0500
-+++ gcc-4.0.0/boehm-gc/include/gc.h 2005-04-28 22:30:38.000000000 -0500
-@@ -500,7 +500,7 @@
+--- a/boehm-gc/include/gc.h
++++ b/boehm-gc/include/gc.h
+@@ -500,7 +500,7 @@ GC_API GC_PTR GC_malloc_atomic_ignore_of
#ifdef __linux__
# include <features.h>
# if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
#ifdef __linux__
# include <features.h>
# if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
---- gcc-4.0.0/libstdc++-v3/include/c_std/std_cstdio.h-orig 2005-04-29 00:08:41.000000000 -0500
-+++ gcc-4.0.0/libstdc++-v3/include/c_std/std_cstdio.h 2005-04-29 00:08:45.000000000 -0500
-@@ -142,7 +142,7 @@
+--- a/libstdc++-v3/include/c_std/std_cstdio.h
++++ b/libstdc++-v3/include/c_std/std_cstdio.h
+@@ -143,7 +143,7 @@ namespace std
---- gcc-4.0.0/libstdc++-v3/configure-old 2005-04-30 22:04:48.061603912 -0500
-+++ gcc-4.0.0/libstdc++-v3/configure 2005-04-30 22:06:13.678588152 -0500
-@@ -7194,6 +7194,9 @@
+--- a/libstdc++-v3/configure
++++ b/libstdc++-v3/configure
+@@ -7324,6 +7324,9 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#include <complex.h>
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#include <complex.h>
---- gcc-4.1.0/libstdc++-v3/include/ext/rope.mps 2006-03-24 01:49:51 +0100
-+++ gcc-4.1.0/libstdc++-v3/include/ext/rope 2006-03-24 01:49:37 +0100
-@@ -59,6 +59,9 @@
+--- a/libstdc++-v3/include/ext/rope
++++ b/libstdc++-v3/include/ext/rope
+@@ -57,6 +57,9 @@
#include <bits/allocator.h>
#include <ext/hash_fun.h>
#include <bits/allocator.h>
#include <ext/hash_fun.h>
# ifdef __GC
# define __GC_CONST const
# else
# ifdef __GC
# define __GC_CONST const
# else
---- gcc-4.1.0/libstdc++-v3/include/ext/ropeimpl.h.mps 2006-03-24 01:50:04 +0100
-+++ gcc-4.1.0/libstdc++-v3/include/ext/ropeimpl.h 2006-03-24 01:50:28 +0100
+--- a/libstdc++-v3/include/ext/ropeimpl.h
++++ b/libstdc++-v3/include/ext/ropeimpl.h
@@ -53,6 +53,9 @@
#include <ext/memory> // For uninitialized_copy_n
#include <ext/numeric> // For power
@@ -53,6 +53,9 @@
#include <ext/memory> // For uninitialized_copy_n
#include <ext/numeric> // For power
-diff -Nur gcc-4.1.2/config.sub gcc-4.1.2-owrt/config.sub
---- gcc-4.1.2/config.sub 2005-12-16 13:57:40.000000000 +0100
-+++ gcc-4.1.2-owrt/config.sub 2007-05-24 12:03:28.000000000 +0200
-@@ -239,7 +239,7 @@
+--- a/config.sub
++++ b/config.sub
+@@ -239,7 +239,7 @@ case $basic_machine in
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
| bfin \
| c4x | clipper \
| d10v | d30v | dlx | dsp16xx \
| bfin \
| c4x | clipper \
| d10v | d30v | dlx | dsp16xx \
+@@ -316,7 +316,7 @@ case $basic_machine in
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
| clipper-* | craynv-* | cydra-* \
| bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
| clipper-* | craynv-* | cydra-* \
-diff -Nur gcc-4.1.2/configure.in gcc-4.1.2-owrt/configure.in
---- gcc-4.1.2/configure.in 2006-11-21 18:48:36.000000000 +0100
-+++ gcc-4.1.2-owrt/configure.in 2007-05-24 12:03:28.000000000 +0200
-@@ -497,6 +497,9 @@
+--- a/configure.in
++++ b/configure.in
+@@ -497,6 +497,9 @@ case "${target}" in
arm-*-riscix*)
noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
;;
arm-*-riscix*)
noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
;;
avr-*-*)
noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
;;
avr-*-*)
noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
;;
-diff -Nur gcc-4.1.2/gcc/builtins.c gcc-4.1.2-owrt/gcc/builtins.c
---- gcc-4.1.2/gcc/builtins.c 2006-10-06 19:06:52.000000000 +0200
-+++ gcc-4.1.2-owrt/gcc/builtins.c 2007-05-24 12:03:28.000000000 +0200
-@@ -9228,7 +9228,7 @@
+--- a/gcc/builtins.c
++++ b/gcc/builtins.c
+@@ -9228,7 +9228,7 @@ validate_arglist (tree arglist, ...)
-diff -Nur gcc-4.1.2/gcc/calls.c gcc-4.1.2-owrt/gcc/calls.c
---- gcc-4.1.2/gcc/calls.c 2007-01-29 18:08:31.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/calls.c 2007-05-24 12:03:28.000000000 +0200
-@@ -3434,7 +3434,7 @@
+--- a/gcc/calls.c
++++ b/gcc/calls.c
+@@ -3434,7 +3434,7 @@ emit_library_call_value_1 (int retval, r
for (; count < nargs; count++)
{
rtx val = va_arg (p, rtx);
for (; count < nargs; count++)
{
rtx val = va_arg (p, rtx);
/* We cannot convert the arg value to the mode the library wants here;
must do it earlier where we know the signedness of the arg. */
/* We cannot convert the arg value to the mode the library wants here;
must do it earlier where we know the signedness of the arg. */
-diff -Nur gcc-4.1.2/gcc/config/avr32/avr32.c gcc-4.1.2-owrt/gcc/config/avr32/avr32.c
---- gcc-4.1.2/gcc/config/avr32/avr32.c 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/avr32.c 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/avr32.c
@@ -0,0 +1,7273 @@
+/*
+ Target hooks and helper functions for AVR32.
@@ -0,0 +1,7273 @@
+/*
+ Target hooks and helper functions for AVR32.
+ set_optab_libfunc (lshr_optab, DImode, "__avr32_lsr64");
+ set_optab_libfunc (ashr_optab, DImode, "__avr32_asr64");
+}
+ set_optab_libfunc (lshr_optab, DImode, "__avr32_lsr64");
+ set_optab_libfunc (ashr_optab, DImode, "__avr32_asr64");
+}
-diff -Nur gcc-4.1.2/gcc/config/avr32/avr32-elf.h gcc-4.1.2-owrt/gcc/config/avr32/avr32-elf.h
---- gcc-4.1.2/gcc/config/avr32/avr32-elf.h 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/avr32-elf.h 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/avr32-elf.h
@@ -0,0 +1,82 @@
+/*
+ Elf specific definitions.
@@ -0,0 +1,82 @@
+/*
+ Elf specific definitions.
+ builtin_define ("__AVR32_HAS_BRANCH_PRED__"); \
+ } \
+ while (0)
+ builtin_define ("__AVR32_HAS_BRANCH_PRED__"); \
+ } \
+ while (0)
-diff -Nur gcc-4.1.2/gcc/config/avr32/avr32.h gcc-4.1.2-owrt/gcc/config/avr32/avr32.h
---- gcc-4.1.2/gcc/config/avr32/avr32.h 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/avr32.h 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/avr32.h
@@ -0,0 +1,3322 @@
+/*
+ Definitions of target machine for AVR32.
@@ -0,0 +1,3322 @@
+/*
+ Definitions of target machine for AVR32.
-diff -Nur gcc-4.1.2/gcc/config/avr32/avr32.md gcc-4.1.2-owrt/gcc/config/avr32/avr32.md
---- gcc-4.1.2/gcc/config/avr32/avr32.md 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/avr32.md 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/avr32.md
@@ -0,0 +1,4694 @@
+;; AVR32 machine description file.
+;; Copyright 2003-2006 Atmel Corporation.
@@ -0,0 +1,4694 @@
+;; AVR32 machine description file.
+;; Copyright 2003-2006 Atmel Corporation.
+
+;; Load the FP coprocessor patterns
+(include "fpcp.md")
+
+;; Load the FP coprocessor patterns
+(include "fpcp.md")
-diff -Nur gcc-4.1.2/gcc/config/avr32/avr32-modes.def gcc-4.1.2-owrt/gcc/config/avr32/avr32-modes.def
---- gcc-4.1.2/gcc/config/avr32/avr32-modes.def 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/avr32-modes.def 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/avr32-modes.def
@@ -0,0 +1 @@
+VECTOR_MODES (INT, 4); /* V4QI V2HI */
@@ -0,0 +1 @@
+VECTOR_MODES (INT, 4); /* V4QI V2HI */
-diff -Nur gcc-4.1.2/gcc/config/avr32/avr32.opt gcc-4.1.2-owrt/gcc/config/avr32/avr32.opt
---- gcc-4.1.2/gcc/config/avr32/avr32.opt 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/avr32.opt 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/avr32.opt
@@ -0,0 +1,78 @@
+; Options for the ATMEL AVR32 port of the compiler.
+
@@ -0,0 +1,78 @@
+; Options for the ATMEL AVR32 port of the compiler.
+
+Specify the AVR32 architecture name
+
+
+Specify the AVR32 architecture name
+
+
-diff -Nur gcc-4.1.2/gcc/config/avr32/avr32-protos.h gcc-4.1.2-owrt/gcc/config/avr32/avr32-protos.h
---- gcc-4.1.2/gcc/config/avr32/avr32-protos.h 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/avr32-protos.h 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/avr32-protos.h
@@ -0,0 +1,175 @@
+/*
+ Prototypes for exported functions defined in avr32.c
@@ -0,0 +1,175 @@
+/*
+ Prototypes for exported functions defined in avr32.c
+void avr32_override_options (void);
+
+#endif /* AVR32_PROTOS_H */
+void avr32_override_options (void);
+
+#endif /* AVR32_PROTOS_H */
-diff -Nur gcc-4.1.2/gcc/config/avr32/crti.asm gcc-4.1.2-owrt/gcc/config/avr32/crti.asm
---- gcc-4.1.2/gcc/config/avr32/crti.asm 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/crti.asm 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/crti.asm
@@ -0,0 +1,64 @@
+/*
+ Init/fini stuff for AVR32.
@@ -0,0 +1,64 @@
+/*
+ Init/fini stuff for AVR32.
+1: .long 0b - _GLOBAL_OFFSET_TABLE_
+2:
+
+1: .long 0b - _GLOBAL_OFFSET_TABLE_
+2:
+
-diff -Nur gcc-4.1.2/gcc/config/avr32/crtn.asm gcc-4.1.2-owrt/gcc/config/avr32/crtn.asm
---- gcc-4.1.2/gcc/config/avr32/crtn.asm 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/crtn.asm 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/crtn.asm
@@ -0,0 +1,44 @@
+/* Copyright (C) 2001 Free Software Foundation, Inc.
+ Written By Nick Clifton
@@ -0,0 +1,44 @@
+/* Copyright (C) 2001 Free Software Foundation, Inc.
+ Written By Nick Clifton
+ .section ".fini"
+ ldm sp++, r6, pc
+
+ .section ".fini"
+ ldm sp++, r6, pc
+
-diff -Nur gcc-4.1.2/gcc/config/avr32/fpcp.md gcc-4.1.2-owrt/gcc/config/avr32/fpcp.md
---- gcc-4.1.2/gcc/config/avr32/fpcp.md 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/fpcp.md 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/fpcp.md
@@ -0,0 +1,551 @@
+;; AVR32 machine description file for Floating-Point instructions.
+;; Copyright 2003-2006 Atmel Corporation.
@@ -0,0 +1,551 @@
+;; AVR32 machine description file for Floating-Point instructions.
+;; Copyright 2003-2006 Atmel Corporation.
+ [(set_attr "type" "fstm")
+ (set_attr "length" "4")
+ (set_attr "cc" "none")])
+ [(set_attr "type" "fstm")
+ (set_attr "length" "4")
+ (set_attr "cc" "none")])
-diff -Nur gcc-4.1.2/gcc/config/avr32/lib1funcs.S gcc-4.1.2-owrt/gcc/config/avr32/lib1funcs.S
---- gcc-4.1.2/gcc/config/avr32/lib1funcs.S 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/lib1funcs.S 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/lib1funcs.S
@@ -0,0 +1,1678 @@
+/*#define __IEEE_LARGE_FLOATS__*/
+
@@ -0,0 +1,1678 @@
+/*#define __IEEE_LARGE_FLOATS__*/
+
+.Linf_sf:
+ .long 0xff000000
+
+.Linf_sf:
+ .long 0xff000000
+
-diff -Nur gcc-4.1.2/gcc/config/avr32/lib2funcs.S gcc-4.1.2-owrt/gcc/config/avr32/lib2funcs.S
---- gcc-4.1.2/gcc/config/avr32/lib2funcs.S 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/lib2funcs.S 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/lib2funcs.S
@@ -0,0 +1,21 @@
+ .align 4
+ .global __nonlocal_goto
@@ -0,0 +1,21 @@
+ .align 4
+ .global __nonlocal_goto
-diff -Nur gcc-4.1.2/gcc/config/avr32/linux-elf.h gcc-4.1.2-owrt/gcc/config/avr32/linux-elf.h
---- gcc-4.1.2/gcc/config/avr32/linux-elf.h 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/linux-elf.h 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/linux-elf.h
@@ -0,0 +1,154 @@
+/*
+ Linux/Elf specific definitions.
@@ -0,0 +1,154 @@
+/*
+ Linux/Elf specific definitions.
+
+#define LINK_GCC_C_SEQUENCE_SPEC \
+ "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
+
+#define LINK_GCC_C_SEQUENCE_SPEC \
+ "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
-diff -Nur gcc-4.1.2/gcc/config/avr32/predicates.md gcc-4.1.2-owrt/gcc/config/avr32/predicates.md
---- gcc-4.1.2/gcc/config/avr32/predicates.md 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/predicates.md 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/predicates.md
@@ -0,0 +1,303 @@
+;; AVR32 predicates file.
+;; Copyright 2003-2006 Atmel Corporation.
@@ -0,0 +1,303 @@
+;; AVR32 predicates file.
+;; Copyright 2003-2006 Atmel Corporation.
+ (and (match_operand 0 "immediate_operand")
+ (match_test "CONST_OK_FOR_CONSTRAINT_P(INTVAL(op), 'K', \"Ku02\")")))
+
+ (and (match_operand 0 "immediate_operand")
+ (match_test "CONST_OK_FOR_CONSTRAINT_P(INTVAL(op), 'K', \"Ku02\")")))
+
-diff -Nur gcc-4.1.2/gcc/config/avr32/simd.md gcc-4.1.2-owrt/gcc/config/avr32/simd.md
---- gcc-4.1.2/gcc/config/avr32/simd.md 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/simd.md 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/simd.md
@@ -0,0 +1,145 @@
+;; AVR32 machine description file for SIMD instructions.
+;; Copyright 2003-2006 Atmel Corporation.
@@ -0,0 +1,145 @@
+;; AVR32 machine description file for SIMD instructions.
+;; Copyright 2003-2006 Atmel Corporation.
+ "psubadd.h\t%0, %1:b, %2:b"
+ [(set_attr "length" "4")
+ (set_attr "type" "alu")])
+ "psubadd.h\t%0, %1:b, %2:b"
+ [(set_attr "length" "4")
+ (set_attr "type" "alu")])
-diff -Nur gcc-4.1.2/gcc/config/avr32/t-avr32 gcc-4.1.2-owrt/gcc/config/avr32/t-avr32
---- gcc-4.1.2/gcc/config/avr32/t-avr32 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/t-avr32 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/t-avr32
@@ -0,0 +1,63 @@
+
+MD_INCLUDES= $(srcdir)/config/avr32/avr32.md \
@@ -0,0 +1,63 @@
+
+MD_INCLUDES= $(srcdir)/config/avr32/avr32.md \
-diff -Nur gcc-4.1.2/gcc/config/avr32/t-elf gcc-4.1.2-owrt/gcc/config/avr32/t-elf
---- gcc-4.1.2/gcc/config/avr32/t-elf 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/t-elf 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/t-elf
@@ -0,0 +1,16 @@
+
+# Assemble startup files.
@@ -0,0 +1,16 @@
+
+# Assemble startup files.
+
+LIBGCC = stmp-multilib
+INSTALL_LIBGCC = install-multilib
+
+LIBGCC = stmp-multilib
+INSTALL_LIBGCC = install-multilib
-diff -Nur gcc-4.1.2/gcc/config/avr32/uclinux-elf.h gcc-4.1.2-owrt/gcc/config/avr32/uclinux-elf.h
---- gcc-4.1.2/gcc/config/avr32/uclinux-elf.h 1970-01-01 01:00:00.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/config/avr32/uclinux-elf.h 2007-05-24 12:03:28.000000000 +0200
+--- /dev/null
++++ b/gcc/config/avr32/uclinux-elf.h
@@ -0,0 +1,20 @@
+
+/* Run-time Target Specification. */
@@ -0,0 +1,20 @@
+
+/* Run-time Target Specification. */
+
+#undef TARGET_DEFAULT
+#define TARGET_DEFAULT (AVR32_FLAG_NO_INIT_GOT)
+
+#undef TARGET_DEFAULT
+#define TARGET_DEFAULT (AVR32_FLAG_NO_INIT_GOT)
-diff -Nur gcc-4.1.2/gcc/config/host-linux.c gcc-4.1.2-owrt/gcc/config/host-linux.c
---- gcc-4.1.2/gcc/config/host-linux.c 2005-08-01 19:43:33.000000000 +0200
-+++ gcc-4.1.2-owrt/gcc/config/host-linux.c 2007-05-24 12:03:28.000000000 +0200
+--- a/gcc/config/host-linux.c
++++ b/gcc/config/host-linux.c
@@ -26,6 +26,9 @@
#include "hosthooks.h"
#include "hosthooks-def.h"
@@ -26,6 +26,9 @@
#include "hosthooks.h"
#include "hosthooks-def.h"
/* Linux has a feature called exec-shield-randomize that perturbs the
address of non-fixed mapped segments by a (relatively) small amount.
/* Linux has a feature called exec-shield-randomize that perturbs the
address of non-fixed mapped segments by a (relatively) small amount.
-diff -Nur gcc-4.1.2/gcc/config.gcc gcc-4.1.2-owrt/gcc/config.gcc
---- gcc-4.1.2/gcc/config.gcc 2006-10-16 01:12:23.000000000 +0200
-+++ gcc-4.1.2-owrt/gcc/config.gcc 2007-05-24 12:03:28.000000000 +0200
-@@ -751,6 +751,24 @@
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
+@@ -751,6 +751,24 @@ avr-*-*)
tm_file="avr/avr.h dbxelf.h"
use_fixproto=yes
;;
tm_file="avr/avr.h dbxelf.h"
use_fixproto=yes
;;
bfin*-elf*)
tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h"
tmake_file=bfin/t-bfin-elf
bfin*-elf*)
tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h"
tmake_file=bfin/t-bfin-elf
+@@ -1614,6 +1632,9 @@ pdp11-*-bsd)
pdp11-*-*)
use_fixproto=yes
;;
pdp11-*-*)
use_fixproto=yes
;;
# port not yet contributed
#powerpc-*-openbsd*)
# tmake_file="${tmake_file} rs6000/t-fprules "
# port not yet contributed
#powerpc-*-openbsd*)
# tmake_file="${tmake_file} rs6000/t-fprules "
+@@ -2581,6 +2602,21 @@ case "${target}" in
fr*-*-*linux*)
supported_defaults=cpu
case "$with_cpu" in
fr*-*-*linux*)
supported_defaults=cpu
case "$with_cpu" in
-diff -Nur gcc-4.1.2/gcc/doc/extend.texi gcc-4.1.2-owrt/gcc/doc/extend.texi
---- gcc-4.1.2/gcc/doc/extend.texi 2007-01-28 20:26:29.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/doc/extend.texi 2007-05-24 12:03:28.000000000 +0200
-@@ -1887,7 +1887,7 @@
+--- a/gcc/doc/extend.texi
++++ b/gcc/doc/extend.texi
+@@ -1887,7 +1887,7 @@ this attribute to work correctly.
@item interrupt
@cindex interrupt handler functions
@item interrupt
@cindex interrupt handler functions
ports to indicate that the specified function is an interrupt handler.
The compiler will generate function entry and exit sequences suitable
for use in an interrupt handler when this attribute is present.
ports to indicate that the specified function is an interrupt handler.
The compiler will generate function entry and exit sequences suitable
for use in an interrupt handler when this attribute is present.
+@@ -1906,6 +1906,15 @@ void f () __attribute__ ((interrupt ("IR
Permissible values for this parameter are: IRQ, FIQ, SWI, ABORT and UNDEF@.
Permissible values for this parameter are: IRQ, FIQ, SWI, ABORT and UNDEF@.
@item interrupt_handler
@cindex interrupt handler functions on the Blackfin, m68k, H8/300 and SH processors
Use this attribute on the Blackfin, m68k, H8/300, H8/300H, H8S, and SH to
@item interrupt_handler
@cindex interrupt handler functions on the Blackfin, m68k, H8/300 and SH processors
Use this attribute on the Blackfin, m68k, H8/300, H8/300H, H8S, and SH to
+@@ -5807,6 +5816,7 @@ instructions, but allow the compiler to
@menu
* Alpha Built-in Functions::
* ARM Built-in Functions::
@menu
* Alpha Built-in Functions::
* ARM Built-in Functions::
* Blackfin Built-in Functions::
* FR-V Built-in Functions::
* X86 Built-in Functions::
* Blackfin Built-in Functions::
* FR-V Built-in Functions::
* X86 Built-in Functions::
+@@ -6045,6 +6055,54 @@ long long __builtin_arm_wxor (long long,
long long __builtin_arm_wzero ()
@end smallexample
long long __builtin_arm_wzero ()
@end smallexample
@node Blackfin Built-in Functions
@subsection Blackfin Built-in Functions
@node Blackfin Built-in Functions
@subsection Blackfin Built-in Functions
-diff -Nur gcc-4.1.2/gcc/doc/invoke.texi gcc-4.1.2-owrt/gcc/doc/invoke.texi
---- gcc-4.1.2/gcc/doc/invoke.texi 2006-09-25 23:21:58.000000000 +0200
-+++ gcc-4.1.2-owrt/gcc/doc/invoke.texi 2007-05-24 12:03:28.000000000 +0200
-@@ -185,7 +185,7 @@
+--- a/gcc/doc/invoke.texi
++++ b/gcc/doc/invoke.texi
+@@ -185,7 +185,7 @@ in the following sections.
-fno-default-inline -fvisibility-inlines-hidden @gol
-Wabi -Wctor-dtor-privacy @gol
-Wnon-virtual-dtor -Wreorder @gol
-fno-default-inline -fvisibility-inlines-hidden @gol
-Wabi -Wctor-dtor-privacy @gol
-Wnon-virtual-dtor -Wreorder @gol
-Wno-non-template-friend -Wold-style-cast @gol
-Woverloaded-virtual -Wno-pmf-conversions @gol
-Wsign-promo}
-Wno-non-template-friend -Wold-style-cast @gol
-Woverloaded-virtual -Wno-pmf-conversions @gol
-Wsign-promo}
+@@ -569,6 +569,10 @@ Objective-C and Objective-C++ Dialects}.
-mauto-incdec -minmax -mlong-calls -mshort @gol
-msoft-reg-count=@var{count}}
-mauto-incdec -minmax -mlong-calls -mshort @gol
-msoft-reg-count=@var{count}}
@emph{MCore Options}
@gccoptlist{-mhardlit -mno-hardlit -mdiv -mno-div -mrelax-immediates @gol
-mno-relax-immediates -mwide-bitfields -mno-wide-bitfields @gol
@emph{MCore Options}
@gccoptlist{-mhardlit -mno-hardlit -mdiv -mno-div -mrelax-immediates @gol
-mno-relax-immediates -mwide-bitfields -mno-wide-bitfields @gol
+@@ -1797,14 +1801,6 @@ to filter out those warnings.
@opindex Wno-deprecated
Do not warn about usage of deprecated features. @xref{Deprecated Features}.
@opindex Wno-deprecated
Do not warn about usage of deprecated features. @xref{Deprecated Features}.
@item -Wno-non-template-friend @r{(C++ only)}
@opindex Wno-non-template-friend
Disable warnings when non-templatized friend functions are declared
@item -Wno-non-template-friend @r{(C++ only)}
@opindex Wno-non-template-friend
Disable warnings when non-templatized friend functions are declared
+@@ -2662,13 +2658,11 @@ get these warnings.
If you want to warn about code which uses the uninitialized value of the
variable in its own initializer, use the @option{-Winit-self} option.
If you want to warn about code which uses the uninitialized value of the
variable in its own initializer, use the @option{-Winit-self} option.
Note that there may be no warning about a variable that is used only
to compute a value that itself is never used, because such
Note that there may be no warning about a variable that is used only
to compute a value that itself is never used, because such
+@@ -5935,10 +5929,6 @@ If number of candidates in the set is sm
we always try to remove unnecessary ivs from the set during its
optimization when a new iv is added to the set.
we always try to remove unnecessary ivs from the set during its
optimization when a new iv is added to the set.
@item vect-max-version-checks
The maximum number of runtime checks that can be performed when doing
loop versioning in the vectorizer. See option ftree-vect-loop-version
@item vect-max-version-checks
The maximum number of runtime checks that can be performed when doing
loop versioning in the vectorizer. See option ftree-vect-loop-version
+@@ -7115,7 +7105,7 @@ platform.
* ARC Options::
* ARM Options::
* AVR Options::
* ARC Options::
* ARM Options::
* AVR Options::
* CRIS Options::
* CRX Options::
* Darwin Options::
* CRIS Options::
* CRX Options::
* Darwin Options::
+@@ -7578,81 +7568,55 @@ comply to the C standards, but it will p
@end table
@node CRIS Options
@end table
@node CRIS Options
+@@ -11341,6 +11305,7 @@ conventions that adheres to the March 19
Application Binary Interface, PowerPC processor supplement. This is the
default unless you configured GCC using @samp{powerpc-*-eabiaix}.
Application Binary Interface, PowerPC processor supplement. This is the
default unless you configured GCC using @samp{powerpc-*-eabiaix}.
@item -mcall-sysv-eabi
@opindex mcall-sysv-eabi
Specify both @option{-mcall-sysv} and @option{-meabi} options.
@item -mcall-sysv-eabi
@opindex mcall-sysv-eabi
Specify both @option{-mcall-sysv} and @option{-meabi} options.
-diff -Nur gcc-4.1.2/gcc/doc/md.texi gcc-4.1.2-owrt/gcc/doc/md.texi
---- gcc-4.1.2/gcc/doc/md.texi 2005-12-16 14:11:58.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/doc/md.texi 2007-05-24 12:03:28.000000000 +0200
-@@ -1686,6 +1686,59 @@
+--- a/gcc/doc/md.texi
++++ b/gcc/doc/md.texi
+@@ -1686,6 +1686,59 @@ A memory reference suitable for iWMMXt l
A memory reference suitable for the ARMv4 ldrsb instruction.
@end table
A memory reference suitable for the ARMv4 ldrsb instruction.
@end table
@item AVR family---@file{avr.h}
@table @code
@item l
@item AVR family---@file{avr.h}
@table @code
@item l
+@@ -2132,102 +2185,6 @@ range of 1 to 2047.
@item M32C---@file{m32c.c}
@item Rsp
@item M32C---@file{m32c.c}
@item Rsp
-diff -Nur gcc-4.1.2/gcc/expr.c gcc-4.1.2-owrt/gcc/expr.c
---- gcc-4.1.2/gcc/expr.c 2006-11-02 18:18:52.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/expr.c 2007-05-24 12:03:28.000000000 +0200
-@@ -3401,18 +3401,19 @@
+--- a/gcc/expr.c
++++ b/gcc/expr.c
+@@ -3401,18 +3401,19 @@ emit_single_push_insn (enum machine_mode
dest = gen_rtx_MEM (mode, dest_addr);
if (type != 0)
dest = gen_rtx_MEM (mode, dest_addr);
if (type != 0)
-diff -Nur gcc-4.1.2/gcc/genoutput.c gcc-4.1.2-owrt/gcc/genoutput.c
---- gcc-4.1.2/gcc/genoutput.c 2005-06-25 04:02:01.000000000 +0200
-+++ gcc-4.1.2-owrt/gcc/genoutput.c 2007-05-24 12:03:28.000000000 +0200
-@@ -383,7 +383,7 @@
+--- a/gcc/genoutput.c
++++ b/gcc/genoutput.c
+@@ -383,7 +383,7 @@ output_insn_data (void)
}
if (d->name && d->name[0] != '*')
}
if (d->name && d->name[0] != '*')
-diff -Nur gcc-4.1.2/gcc/longlong.h gcc-4.1.2-owrt/gcc/longlong.h
---- gcc-4.1.2/gcc/longlong.h 2005-12-06 11:02:57.000000000 +0100
-+++ gcc-4.1.2-owrt/gcc/longlong.h 2007-05-24 12:03:28.000000000 +0200
-@@ -227,6 +227,39 @@
+--- a/gcc/longlong.h
++++ b/gcc/longlong.h
+@@ -227,6 +227,39 @@ UDItype __umulsidi3 (USItype, USItype);
#define UDIV_TIME 100
#endif /* __arm__ */
#define UDIV_TIME 100
#endif /* __arm__ */
#if defined (__hppa) && W_TYPE_SIZE == 32
#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
__asm__ ("add %4,%5,%1\n\taddc %2,%3,%0" \
#if defined (__hppa) && W_TYPE_SIZE == 32
#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
__asm__ ("add %4,%5,%1\n\taddc %2,%3,%0" \
-diff -Nur gcc-4.1.2/libstdc++-v3/acinclude.m4 gcc-4.1.2-owrt/libstdc++-v3/acinclude.m4
---- gcc-4.1.2/libstdc++-v3/acinclude.m4 2007-01-29 11:51:01.000000000 +0100
-+++ gcc-4.1.2-owrt/libstdc++-v3/acinclude.m4 2007-05-24 12:03:28.000000000 +0200
-@@ -125,6 +125,15 @@
+--- a/libstdc++-v3/acinclude.m4
++++ b/libstdc++-v3/acinclude.m4
+@@ -125,6 +125,15 @@ AC_DEFUN([GLIBCXX_CONFIGURE], [
## other macros from doing the same. This should be automated.) -pme
need_libmath=no
## other macros from doing the same. This should be automated.) -pme
need_libmath=no
# Find platform-specific directories containing configuration info.
# Also possibly modify flags used elsewhere, as needed by the platform.
GLIBCXX_CHECK_HOST
# Find platform-specific directories containing configuration info.
# Also possibly modify flags used elsewhere, as needed by the platform.
GLIBCXX_CHECK_HOST
+@@ -1043,8 +1052,8 @@ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [
int i;
int j;
__locale_t loc;
int i;
int j;
__locale_t loc;
+@@ -1953,6 +1962,14 @@ AC_DEFUN([AC_LC_MESSAGES], [
# Macros from the top-level gcc directory.
m4_include([../config/tls.m4])
# Macros from the top-level gcc directory.
m4_include([../config/tls.m4])
-diff -Nur gcc-4.1.2/libstdc++-v3/config/os/gnu-linux/ctype_base.h gcc-4.1.2-owrt/libstdc++-v3/config/os/gnu-linux/ctype_base.h
---- gcc-4.1.2/libstdc++-v3/config/os/gnu-linux/ctype_base.h 2005-08-17 04:28:44.000000000 +0200
-+++ gcc-4.1.2-owrt/libstdc++-v3/config/os/gnu-linux/ctype_base.h 2007-05-24 12:03:28.000000000 +0200
+--- a/libstdc++-v3/config/os/gnu-linux/ctype_base.h
++++ b/libstdc++-v3/config/os/gnu-linux/ctype_base.h
@@ -43,8 +43,8 @@
struct ctype_base
{
@@ -43,8 +43,8 @@
struct ctype_base
{
// NB: Offsets into ctype<char>::_M_table force a particular size
// on the mask type. Because of this, we don't use an enum.
typedef unsigned short mask;
// NB: Offsets into ctype<char>::_M_table force a particular size
// on the mask type. Because of this, we don't use an enum.
typedef unsigned short mask;
-diff -Nur gcc-4.1.2/libstdc++-v3/configure.host gcc-4.1.2-owrt/libstdc++-v3/configure.host
---- gcc-4.1.2/libstdc++-v3/configure.host 2007-01-28 21:12:40.000000000 +0100
-+++ gcc-4.1.2-owrt/libstdc++-v3/configure.host 2007-05-24 12:03:28.000000000 +0200
-@@ -214,8 +214,15 @@
+--- a/libstdc++-v3/configure.host
++++ b/libstdc++-v3/configure.host
+@@ -214,8 +214,15 @@ case "${host_os}" in
freebsd*)
os_include_dir="os/bsd/freebsd"
;;
freebsd*)
os_include_dir="os/bsd/freebsd"
;;
;;
hpux*)
os_include_dir="os/hpux"
;;
hpux*)
os_include_dir="os/hpux"
-diff -Nur gcc-4.1.2/libstdc++-v3/include/Makefile.in gcc-4.1.2-owrt/libstdc++-v3/include/Makefile.in
---- gcc-4.1.2/libstdc++-v3/include/Makefile.in 2006-01-10 18:14:00.000000000 +0100
-+++ gcc-4.1.2-owrt/libstdc++-v3/include/Makefile.in 2007-05-24 12:03:28.000000000 +0200
-@@ -36,6 +36,7 @@
+--- a/libstdc++-v3/include/Makefile.in
++++ b/libstdc++-v3/include/Makefile.in
+@@ -36,6 +36,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(top_srcdir)/fragment.am
subdir = include
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(top_srcdir)/fragment.am
subdir = include
-diff -Nur gcc-4.1.2/libstdc++-v3/libmath/Makefile.in gcc-4.1.2-owrt/libstdc++-v3/libmath/Makefile.in
---- gcc-4.1.2/libstdc++-v3/libmath/Makefile.in 2006-01-10 18:14:00.000000000 +0100
-+++ gcc-4.1.2-owrt/libstdc++-v3/libmath/Makefile.in 2007-05-24 12:03:28.000000000 +0200
-@@ -37,6 +37,7 @@
+--- a/libstdc++-v3/libmath/Makefile.in
++++ b/libstdc++-v3/libmath/Makefile.in
+@@ -37,6 +37,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
subdir = libmath
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
subdir = libmath
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-diff -Nur gcc-4.1.2/libstdc++-v3/libsupc++/Makefile.in gcc-4.1.2-owrt/libstdc++-v3/libsupc++/Makefile.in
---- gcc-4.1.2/libstdc++-v3/libsupc++/Makefile.in 2006-01-10 18:14:00.000000000 +0100
-+++ gcc-4.1.2-owrt/libstdc++-v3/libsupc++/Makefile.in 2007-05-24 12:03:28.000000000 +0200
-@@ -38,6 +38,7 @@
+--- a/libstdc++-v3/libsupc++/Makefile.in
++++ b/libstdc++-v3/libsupc++/Makefile.in
+@@ -38,6 +38,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
DIST_COMMON = $(glibcxxinstall_HEADERS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(top_srcdir)/fragment.am
subdir = libsupc++
DIST_COMMON = $(glibcxxinstall_HEADERS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(top_srcdir)/fragment.am
subdir = libsupc++
-diff -Nur gcc-4.1.2/libstdc++-v3/Makefile.in gcc-4.1.2-owrt/libstdc++-v3/Makefile.in
---- gcc-4.1.2/libstdc++-v3/Makefile.in 2006-01-10 18:14:00.000000000 +0100
-+++ gcc-4.1.2-owrt/libstdc++-v3/Makefile.in 2007-05-24 12:03:28.000000000 +0200
-@@ -36,6 +36,7 @@
+--- a/libstdc++-v3/Makefile.in
++++ b/libstdc++-v3/Makefile.in
+@@ -36,6 +36,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
DIST_COMMON = README $(am__configure_deps) $(srcdir)/../config.guess \
$(srcdir)/../config.sub $(srcdir)/../install-sh \
$(srcdir)/../ltmain.sh $(srcdir)/../missing \
DIST_COMMON = README $(am__configure_deps) $(srcdir)/../config.guess \
$(srcdir)/../config.sub $(srcdir)/../install-sh \
$(srcdir)/../ltmain.sh $(srcdir)/../missing \
-diff -Nur gcc-4.1.2/libstdc++-v3/po/Makefile.in gcc-4.1.2-owrt/libstdc++-v3/po/Makefile.in
---- gcc-4.1.2/libstdc++-v3/po/Makefile.in 2006-01-10 18:14:00.000000000 +0100
-+++ gcc-4.1.2-owrt/libstdc++-v3/po/Makefile.in 2007-05-24 12:03:28.000000000 +0200
-@@ -36,6 +36,7 @@
+--- a/libstdc++-v3/po/Makefile.in
++++ b/libstdc++-v3/po/Makefile.in
+@@ -36,6 +36,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(top_srcdir)/fragment.am
subdir = po
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(top_srcdir)/fragment.am
subdir = po
-diff -Nur gcc-4.1.2/libstdc++-v3/src/Makefile.in gcc-4.1.2-owrt/libstdc++-v3/src/Makefile.in
---- gcc-4.1.2/libstdc++-v3/src/Makefile.in 2006-01-10 18:14:00.000000000 +0100
-+++ gcc-4.1.2-owrt/libstdc++-v3/src/Makefile.in 2007-05-24 12:03:28.000000000 +0200
-@@ -36,6 +36,7 @@
+--- a/libstdc++-v3/src/Makefile.in
++++ b/libstdc++-v3/src/Makefile.in
+@@ -36,6 +36,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
-diff -urN gcc-4.1.2/fastjar/Makefile.in gcc-4.1.2.new/fastjar/Makefile.in
---- gcc-4.1.2/fastjar/Makefile.in 2005-05-18 03:38:46.000000000 +0200
-+++ gcc-4.1.2.new/fastjar/Makefile.in 2009-02-01 19:51:31.000000000 +0100
-@@ -79,7 +79,7 @@
+--- a/fastjar/Makefile.in
++++ b/fastjar/Makefile.in
+@@ -79,7 +79,7 @@ CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(fastjar_SOURCES) $(grepjar_SOURCES)
DIST_SOURCES = $(fastjar_SOURCES) $(grepjar_SOURCES)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(fastjar_SOURCES) $(grepjar_SOURCES)
DIST_SOURCES = $(fastjar_SOURCES) $(grepjar_SOURCES)
am__TEXINFO_TEX_DIR = $(srcdir)/../gcc/doc/include
DVIS = fastjar.dvi
PDFS = fastjar.pdf
am__TEXINFO_TEX_DIR = $(srcdir)/../gcc/doc/include
DVIS = fastjar.dvi
PDFS = fastjar.pdf
+@@ -773,7 +773,7 @@ distcleancheck: distclean
exit 1; } >&2
check-am: all-am
check: check-am
exit 1; } >&2
check-am: all-am
check: check-am
http://sourceforge.net/mailarchive/forum.php?thread_id=8959304&forum_id=5348
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24836
http://sourceforge.net/mailarchive/forum.php?thread_id=8959304&forum_id=5348
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24836
---- gcc/gcc/configure.ac (revision 106699)
-+++ gcc/gcc/configure.ac (working copy)
-@@ -2446,7 +2446,7 @@
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -2435,7 +2435,7 @@ foo: .long 25
tls_first_minor=14
tls_as_opt="-m64 -Aesame --fatal-warnings"
;;
tls_first_minor=14
tls_as_opt="-m64 -Aesame --fatal-warnings"
;;
conftest_s='
.section ".tdata","awT",@progbits
foo: .long 25
conftest_s='
.section ".tdata","awT",@progbits
foo: .long 25
---- gcc/gcc/configure
-+++ gcc/gcc/configure
-@@ -14846,7 +14846,7 @@
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -14762,7 +14762,7 @@ foo: .long 25
tls_first_minor=14
tls_as_opt="-m64 -Aesame --fatal-warnings"
;;
tls_first_minor=14
tls_as_opt="-m64 -Aesame --fatal-warnings"
;;
See http://gcc.gnu.org/PR16350
See http://gcc.gnu.org/PR16350
-Index: gcc-4.1.1/gcc/config/arm/linux-elf.h
-===================================================================
---- gcc-4.1.1.orig/gcc/config/arm/linux-elf.h
-+++ gcc-4.1.1/gcc/config/arm/linux-elf.h
+--- a/gcc/config/arm/linux-elf.h
++++ b/gcc/config/arm/linux-elf.h
@@ -28,19 +28,33 @@
#undef TARGET_VERSION
#define TARGET_VERSION fputs (" (ARM GNU/Linux with ELF)", stderr);
@@ -28,19 +28,33 @@
#undef TARGET_VERSION
#define TARGET_VERSION fputs (" (ARM GNU/Linux with ELF)", stderr);
/* Now we define the strings used to build the spec file. */
#undef LIB_SPEC
/* Now we define the strings used to build the spec file. */
#undef LIB_SPEC
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker " LINUX_TARGET_INTERPRETER "} \
-X \
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker " LINUX_TARGET_INTERPRETER "} \
-X \
SUBTARGET_EXTRA_LINK_SPEC
#undef LINK_SPEC
SUBTARGET_EXTRA_LINK_SPEC
#undef LINK_SPEC
-Index: gcc-4.1.1/gcc/config.gcc
-===================================================================
---- gcc-4.1.1.orig/gcc/config.gcc
-+++ gcc-4.1.1/gcc/config.gcc
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
@@ -672,6 +672,11 @@ arm*-*-netbsd*)
;;
arm*-*-linux*) # ARM GNU/Linux with ELF
@@ -672,6 +672,11 @@ arm*-*-netbsd*)
;;
arm*-*-linux*) # ARM GNU/Linux with ELF
+ esac
tmake_file="${tmake_file} t-linux arm/t-arm"
case ${target} in
+ esac
tmake_file="${tmake_file} t-linux arm/t-arm"
case ${target} in
- arm*-*-linux-gnueabi)
-Index: gcc-4.1.1/gcc/config/arm/linux-eabi.h
-===================================================================
---- gcc-4.1.1.orig/gcc/config/arm/linux-eabi.h
-+++ gcc-4.1.1/gcc/config/arm/linux-eabi.h
+ arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi)
+--- a/gcc/config/arm/linux-eabi.h
++++ b/gcc/config/arm/linux-eabi.h
@@ -20,6 +20,17 @@
the Free Software Foundation, 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
@@ -20,6 +20,17 @@
the Free Software Foundation, 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
/* Use ld-linux.so.3 so that it will be possible to run "classic"
GNU/Linux binaries on an EABI system. */
/* Use ld-linux.so.3 so that it will be possible to run "classic"
GNU/Linux binaries on an EABI system. */
-Index: gcc-4.1.1/gcc/config/arm/bpabi.h
-===================================================================
---- gcc-4.1.1.orig/gcc/config/arm/bpabi.h
-+++ gcc-4.1.1/gcc/config/arm/bpabi.h
+--- a/gcc/config/arm/bpabi.h
++++ b/gcc/config/arm/bpabi.h
@@ -33,9 +33,19 @@
#undef FPUTYPE_DEFAULT
#define FPUTYPE_DEFAULT FPUTYPE_VFP
@@ -33,9 +33,19 @@
#undef FPUTYPE_DEFAULT
#define FPUTYPE_DEFAULT FPUTYPE_VFP
---- trunk/gcc/config/arm/arm.c 2006/09/19 13:18:27 117055
-+++ trunk/gcc/config/arm/arm.c 2006/09/19 13:19:24 117056
-@@ -15415,6 +15415,15 @@
+--- a/gcc/config/arm/arm.c
++++ b/gcc/config/arm/arm.c
+@@ -15371,6 +15371,15 @@ arm_unwind_emit_set (FILE * asm_out_file
/* Move from sp to reg. */
asm_fprintf (asm_out_file, "\t.movsp %r\n", REGNO (e0));
}
/* Move from sp to reg. */
asm_fprintf (asm_out_file, "\t.movsp %r\n", REGNO (e0));
}
--- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h
--- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h
The ARM10TDMI core is the default for armv5t, so set
SUBTARGET_CPU_DEFAULT to achieve this. */
#undef SUBTARGET_CPU_DEFAULT
The ARM10TDMI core is the default for armv5t, so set
SUBTARGET_CPU_DEFAULT to achieve this. */
#undef SUBTARGET_CPU_DEFAULT
+#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm9tdmi
#undef SUBTARGET_EXTRA_LINK_SPEC
+#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm9tdmi
#undef SUBTARGET_EXTRA_LINK_SPEC
- #define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux_eabi"
+ #define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION
-diff -ur gcc.old/libstdc++-v3/configure gcc.dev/libstdc++-v3/configure
---- gcc.old/libstdc++-v3/configure 2006-06-29 23:26:47.000000000 +0200
-+++ gcc.dev/libstdc++-v3/configure 2006-06-05 15:48:03.000000000 +0200
-@@ -5745,7 +5745,7 @@
+--- a/libstdc++-v3/configure
++++ b/libstdc++-v3/configure
+@@ -5745,7 +5745,7 @@ if test "${enable_clocale+set}" = set; t
enableval="$enable_clocale"
case "$enableval" in
enableval="$enable_clocale"
case "$enableval" in
*) { { echo "$as_me:$LINENO: error: Unknown argument to enable/disable clocale" >&5
echo "$as_me: error: Unknown argument to enable/disable clocale" >&2;}
{ (exit 1); exit 1; }; } ;;
*) { { echo "$as_me:$LINENO: error: Unknown argument to enable/disable clocale" >&5
echo "$as_me: error: Unknown argument to enable/disable clocale" >&2;}
{ (exit 1); exit 1; }; } ;;
+@@ -6524,23 +6524,6 @@ echo $ECHO_N "checking for enabled long
echo "${ECHO_T}$enable_long_long" >&6
echo "${ECHO_T}$enable_long_long" >&6
# Test wchar.h for mbstate_t, which is needed for char_traits and fpos.
for ac_header in wchar.h
# Test wchar.h for mbstate_t, which is needed for char_traits and fpos.
for ac_header in wchar.h
This patch was authored by Thorsten Glaser <tg@mirbsd.de>
with copyright assignment to the FSF in effect.
This patch was authored by Thorsten Glaser <tg@mirbsd.de>
with copyright assignment to the FSF in effect.
-Index: gcc-4.1.2/gcc/c-opts.c
-===================================================================
---- gcc-4.1.2.orig/gcc/c-opts.c 2007-07-31 01:14:52.799979303 +0200
-+++ gcc-4.1.2/gcc/c-opts.c 2007-07-31 01:17:10.535828420 +0200
-@@ -103,6 +103,9 @@
+--- a/gcc/c-opts.c
++++ b/gcc/c-opts.c
+@@ -103,6 +103,9 @@ static size_t deferred_count;
/* Number of deferred options scanned for -include. */
static size_t include_cursor;
/* Number of deferred options scanned for -include. */
static size_t include_cursor;
static void set_Wimplicit (int);
static void handle_OPT_d (const char *);
static void set_std_cxx98 (int);
static void set_Wimplicit (int);
static void handle_OPT_d (const char *);
static void set_std_cxx98 (int);
+@@ -448,6 +451,14 @@ c_common_handle_option (size_t scode, co
mesg_implicit_function_declaration = 2;
break;
mesg_implicit_function_declaration = 2;
break;
case OPT_Wformat:
set_Wformat (value);
break;
case OPT_Wformat:
set_Wformat (value);
break;
+@@ -691,6 +702,12 @@ c_common_handle_option (size_t scode, co
flag_exceptions = value;
break;
flag_exceptions = value;
break;
case OPT_fimplement_inlines:
flag_implement_inlines = value;
break;
case OPT_fimplement_inlines:
flag_implement_inlines = value;
break;
+@@ -1121,6 +1138,47 @@ c_common_init (void)
/* Has to wait until now so that cpplib has its hash table. */
init_pragma ();
/* Has to wait until now so that cpplib has its hash table. */
init_pragma ();
-Index: gcc-4.1.2/gcc/c.opt
-===================================================================
---- gcc-4.1.2.orig/gcc/c.opt 2007-07-31 01:14:52.807979755 +0200
-+++ gcc-4.1.2/gcc/c.opt 2007-07-31 01:15:32.270228583 +0200
-@@ -185,6 +185,10 @@
+--- a/gcc/c.opt
++++ b/gcc/c.opt
+@@ -185,6 +185,10 @@ Werror-implicit-function-declaration
C ObjC RejectNegative
Make implicit function declarations an error
C ObjC RejectNegative
Make implicit function declarations an error
Wfloat-equal
C ObjC C++ ObjC++ Var(warn_float_equal)
Warn if testing floating point numbers for equality
Wfloat-equal
C ObjC C++ ObjC++ Var(warn_float_equal)
Warn if testing floating point numbers for equality
+@@ -541,6 +545,9 @@ C++ ObjC++
fhosted
C ObjC
Assume normal C execution environment
fhosted
C ObjC
Assume normal C execution environment
-Index: gcc-4.1.2/gcc/common.opt
-===================================================================
---- gcc-4.1.2.orig/gcc/common.opt 2007-07-31 01:14:52.815980213 +0200
-+++ gcc-4.1.2/gcc/common.opt 2007-07-31 01:17:41.997621326 +0200
-@@ -77,6 +77,10 @@
+--- a/gcc/common.opt
++++ b/gcc/common.opt
+@@ -77,6 +77,10 @@ Werror
Common Var(warnings_are_errors)
Treat all warnings as errors
Common Var(warnings_are_errors)
Treat all warnings as errors
Wextra
Common
Print extra (possibly unwanted) warnings
Wextra
Common
Print extra (possibly unwanted) warnings
+@@ -451,6 +455,9 @@ fguess-branch-probability
Common Report Var(flag_guess_branch_prob)
Enable guessing of branch probabilities
Common Report Var(flag_guess_branch_prob)
Enable guessing of branch probabilities
; Nonzero means ignore `#ident' directives. 0 means handle them.
; Generate position-independent code for executables if possible
; On SVR4 targets, it also controls whether or not to emit a
; Nonzero means ignore `#ident' directives. 0 means handle them.
; Generate position-independent code for executables if possible
; On SVR4 targets, it also controls whether or not to emit a
-Index: gcc-4.1.2/gcc/opts.c
-===================================================================
---- gcc-4.1.2.orig/gcc/opts.c 2007-07-31 01:14:52.823980670 +0200
-+++ gcc-4.1.2/gcc/opts.c 2007-07-31 01:18:38.152821428 +0200
-@@ -569,8 +569,6 @@
+--- a/gcc/opts.c
++++ b/gcc/opts.c
+@@ -569,8 +569,6 @@ decode_options (unsigned int argc, const
flag_schedule_insns_after_reload = 1;
#endif
flag_regmove = 1;
flag_schedule_insns_after_reload = 1;
#endif
flag_regmove = 1;
flag_reorder_blocks = 1;
flag_reorder_functions = 1;
flag_tree_store_ccp = 1;
flag_reorder_blocks = 1;
flag_reorder_functions = 1;
flag_tree_store_ccp = 1;
+@@ -586,6 +584,9 @@ decode_options (unsigned int argc, const
flag_inline_functions = 1;
flag_unswitch_loops = 1;
flag_gcse_after_reload = 1;
flag_inline_functions = 1;
flag_unswitch_loops = 1;
flag_gcse_after_reload = 1;
+@@ -759,6 +760,17 @@ common_handle_option (size_t scode, cons
set_Wextra (value);
break;
set_Wextra (value);
break;
case OPT_Wextra:
set_Wextra (value);
break;
case OPT_Wextra:
set_Wextra (value);
break;
-Index: gcc-4.1.2/gcc/doc/cppopts.texi
-===================================================================
---- gcc-4.1.2.orig/gcc/doc/cppopts.texi 2007-07-31 01:14:52.827980895 +0200
-+++ gcc-4.1.2/gcc/doc/cppopts.texi 2007-07-31 01:15:32.362233824 +0200
-@@ -166,6 +166,11 @@
+--- a/gcc/doc/cppopts.texi
++++ b/gcc/doc/cppopts.texi
+@@ -166,6 +166,11 @@ in older programs. This warning is on b
Make all warnings into hard errors. Source code which triggers warnings
will be rejected.
Make all warnings into hard errors. Source code which triggers warnings
will be rejected.
@item -Wsystem-headers
@opindex Wsystem-headers
Issue warnings for code in system headers. These are normally unhelpful
@item -Wsystem-headers
@opindex Wsystem-headers
Issue warnings for code in system headers. These are normally unhelpful
-Index: gcc-4.1.2/gcc/doc/invoke.texi
-===================================================================
---- gcc-4.1.2.orig/gcc/doc/invoke.texi 2007-07-31 01:14:59.592366375 +0200
-+++ gcc-4.1.2/gcc/doc/invoke.texi 2007-07-31 01:16:22.569094954 +0200
-@@ -222,7 +222,7 @@
+--- a/gcc/doc/invoke.texi
++++ b/gcc/doc/invoke.texi
+@@ -222,7 +222,7 @@ Objective-C and Objective-C++ Dialects}.
-Wc++-compat -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment @gol
-Wconversion -Wno-deprecated-declarations @gol
-Wdisabled-optimization -Wno-div-by-zero -Wno-endif-labels @gol
-Wc++-compat -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment @gol
-Wconversion -Wno-deprecated-declarations @gol
-Wdisabled-optimization -Wno-div-by-zero -Wno-endif-labels @gol
-Wfatal-errors -Wfloat-equal -Wformat -Wformat=2 @gol
-Wno-format-extra-args -Wformat-nonliteral @gol
-Wformat-security -Wformat-y2k @gol
-Wfatal-errors -Wfloat-equal -Wformat -Wformat=2 @gol
-Wno-format-extra-args -Wformat-nonliteral @gol
-Wformat-security -Wformat-y2k @gol
+@@ -3390,6 +3390,22 @@ This option is only supported for C and
@opindex Werror
Make all warnings into errors.
@opindex Werror
Make all warnings into errors.
@item -Wstack-protector
This option is only active when @option{-fstack-protector} is active. It
warns about functions that will not be protected against stack smashing.
@item -Wstack-protector
This option is only active when @option{-fstack-protector} is active. It
warns about functions that will not be protected against stack smashing.
+@@ -4679,7 +4695,7 @@ erroneously read data to propagate withi
Perform the optimizations of loop strength reduction and
elimination of iteration variables.
Perform the optimizations of loop strength reduction and
elimination of iteration variables.
@item -fthread-jumps
@opindex fthread-jumps
@item -fthread-jumps
@opindex fthread-jumps
+@@ -4826,7 +4842,7 @@ safely dereference null pointers. Use
@option{-fno-delete-null-pointer-checks} to disable this optimization
for programs which depend on that behavior.
@option{-fno-delete-null-pointer-checks} to disable this optimization
for programs which depend on that behavior.
@item -fexpensive-optimizations
@opindex fexpensive-optimizations
@item -fexpensive-optimizations
@opindex fexpensive-optimizations
+@@ -5234,7 +5250,7 @@ node, an alias set for the node. Nodes
allowed to alias. For an example, see the C front-end function
@code{c_get_alias_set}.
allowed to alias. For an example, see the C front-end function
@code{c_get_alias_set}.
@item -falign-functions
@itemx -falign-functions=@var{n}
@item -falign-functions
@itemx -falign-functions=@var{n}
-Index: gcc-4.1.2/gcc/java/jvspec.c
-===================================================================
---- gcc-4.1.2.orig/gcc/java/jvspec.c 2007-07-31 01:14:52.847982035 +0200
-+++ gcc-4.1.2/gcc/java/jvspec.c 2007-07-31 01:15:32.454239068 +0200
-@@ -620,6 +620,7 @@
+--- a/gcc/java/jvspec.c
++++ b/gcc/java/jvspec.c
+@@ -620,6 +620,7 @@ lang_specific_pre_link (void)
class name. Append dummy `.c' that can be stripped by set_input so %b
is correct. */
set_input (concat (main_class_name, "main.c", NULL));
class name. Append dummy `.c' that can be stripped by set_input so %b
is correct. */
set_input (concat (main_class_name, "main.c", NULL));
---- gcc-4.2-20061205/gcc/config/arm/t-linux 2006-12-08 15:18:33.000000000 -0800
-+++ gcc-4.2-20061205/gcc/config/arm/t-linux 2006-12-08 15:18:33.000000000 -0800
-@@ -4,7 +4,10 @@
+--- a/gcc/config/arm/linux-elf.h
++++ b/gcc/config/arm/linux-elf.h
+@@ -63,7 +63,7 @@
+ %{shared:-lc} \
+ %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
+
+-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
++#define LIBGCC_SPEC "-lgcc"
+
+ #ifdef USE_UCLIBC
+ #define LINUX_TARGET_INTERPRETER "/lib/ld-uClibc.so.0"
+--- a/gcc/config/arm/t-linux
++++ b/gcc/config/arm/t-linux
+@@ -4,7 +4,10 @@ TARGET_LIBGCC2_CFLAGS = -fomit-frame-poi
LIBGCC2_DEBUG_CFLAGS = -g0
LIB1ASMSRC = arm/lib1funcs.asm
LIBGCC2_DEBUG_CFLAGS = -g0
LIB1ASMSRC = arm/lib1funcs.asm
# MULTILIB_OPTIONS = mhard-float/msoft-float
# MULTILIB_DIRNAMES = hard-float soft-float
# MULTILIB_OPTIONS = mhard-float/msoft-float
# MULTILIB_DIRNAMES = hard-float soft-float
-
---- gcc-4.2-20061205/gcc/config/arm/linux-elf.h 2006-12-08 15:18:33.000000000 -0800
-+++ gcc-4.2-20061205/gcc/config/arm/linux-elf.h 2006-12-08 15:18:33.000000000 -0800
-@@ -63,7 +63,7 @@
- %{shared:-lc} \
- %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
-
--#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
-+#define LIBGCC_SPEC "-lgcc"
-
- #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
-