aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.6/libjava
diff options
context:
space:
mode:
authorJing Yu <jingyu@google.com>2012-02-15 15:40:16 -0800
committerJing Yu <jingyu@google.com>2012-02-15 15:40:16 -0800
commit3f73d6ef90458b45bbbb33ef4c2b174d4662a22d (patch)
tree1b5f0d96c51b51168b3713058a1b62e92f1136eb /gcc-4.6/libjava
parentd7030123e04baab5dbff9c9ee04c0de99bd9a774 (diff)
downloadtoolchain_gcc-3f73d6ef90458b45bbbb33ef4c2b174d4662a22d.tar.gz
toolchain_gcc-3f73d6ef90458b45bbbb33ef4c2b174d4662a22d.tar.bz2
toolchain_gcc-3f73d6ef90458b45bbbb33ef4c2b174d4662a22d.zip
Sync down FSF r184235@google/gcc-4_6_2-mobile branch
1) Get mostly new patches from FSF gcc-4.6 branch 2) Fix PR52129 3) Insert GNU-stack note for all ARM targets Change-Id: I2b9926981210e517e4021242908074319a91d6bd
Diffstat (limited to 'gcc-4.6/libjava')
-rw-r--r--gcc-4.6/libjava/ChangeLog29
-rw-r--r--gcc-4.6/libjava/classpath/ChangeLog4
-rw-r--r--gcc-4.6/libjava/classpath/ChangeLog.gcj6
-rwxr-xr-xgcc-4.6/libjava/classpath/config.rpath4
-rwxr-xr-xgcc-4.6/libjava/classpath/configure12
-rwxr-xr-xgcc-4.6/libjava/configure16
-rw-r--r--gcc-4.6/libjava/configure.ac2
-rw-r--r--gcc-4.6/libjava/include/dwarf2-signal.h15
-rw-r--r--gcc-4.6/libjava/java/lang/natClass.cc4
-rw-r--r--gcc-4.6/libjava/libltdl/ChangeLog9
-rw-r--r--gcc-4.6/libjava/libltdl/acinclude.m46
-rwxr-xr-xgcc-4.6/libjava/libltdl/configure4
-rw-r--r--gcc-4.6/libjava/prims.cc13
13 files changed, 81 insertions, 43 deletions
diff --git a/gcc-4.6/libjava/ChangeLog b/gcc-4.6/libjava/ChangeLog
index 89d12daa7..b27b55bea 100644
--- a/gcc-4.6/libjava/ChangeLog
+++ b/gcc-4.6/libjava/ChangeLog
@@ -1,3 +1,32 @@
+2011-11-24 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/50888
+ * prims.cc: Don't include ctype.h.
+ (c_isspace): Define.
+ (next_property_key, next_property_value): Use it instead
+ of isspace.
+
+2011-11-20 Andreas Tobler <andreast@fgznet.ch>
+
+ * configure.ac: Fix FreeBSD 10 detection.
+ * configure: Regenerate.
+
+2011-10-26 Release Manager
+
+ * GCC 4.6.2 released.
+
+2011-10-18 Uros Bizjak <ubizjak@gmail.com>
+ Eric Botcazou <ebotcazou@adacore.com>
+
+ PR target/50737
+ * include/dwarf2-signal.h [__alpha__]: Remove MAKE_THROW_FRAME
+ definition.
+
+2011-07-12 Andrew Haley <aph@redhat.com>
+
+ * java/lang/natClass.cc (finalize): Make sure that the class
+ really has an engine.
+
2011-06-27 Release Manager
* GCC 4.6.1 released.
diff --git a/gcc-4.6/libjava/classpath/ChangeLog b/gcc-4.6/libjava/classpath/ChangeLog
index 93a6f6209..7b6d27055 100644
--- a/gcc-4.6/libjava/classpath/ChangeLog
+++ b/gcc-4.6/libjava/classpath/ChangeLog
@@ -1,3 +1,7 @@
+2011-10-26 Release Manager
+
+ * GCC 4.6.2 released.
+
2011-06-27 Release Manager
* GCC 4.6.1 released.
diff --git a/gcc-4.6/libjava/classpath/ChangeLog.gcj b/gcc-4.6/libjava/classpath/ChangeLog.gcj
index 9eb70ac14..0f537912e 100644
--- a/gcc-4.6/libjava/classpath/ChangeLog.gcj
+++ b/gcc-4.6/libjava/classpath/ChangeLog.gcj
@@ -1,3 +1,9 @@
+2011-11-29 Andreas Tobler <andreast@fgznet.ch>
+
+ * config.rpath (ld_shlibs): Fix detection of FreeBSD-10 and up.
+ (libname_spec): Likewise.
+ * configure: Regenerate with autoconf -I ../../.
+
2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config.rpath, ltcf-c.sh, ltcf-gcj.sh, ltconfig: Remove
diff --git a/gcc-4.6/libjava/classpath/config.rpath b/gcc-4.6/libjava/classpath/config.rpath
index def43dcc5..b7f75cde4 100755
--- a/gcc-4.6/libjava/classpath/config.rpath
+++ b/gcc-4.6/libjava/classpath/config.rpath
@@ -361,7 +361,7 @@ else
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
- freebsd2*)
+ freebsd2.*)
hardcode_direct=yes
hardcode_minus_L=yes
;;
@@ -533,7 +533,7 @@ case "$host_os" in
;;
freebsd* | dragonfly*)
case "$host_os" in
- freebsd[123]*)
+ freebsd[23].*)
library_names_spec='$libname$shrext$versuffix' ;;
*)
library_names_spec='$libname$shrext' ;;
diff --git a/gcc-4.6/libjava/classpath/configure b/gcc-4.6/libjava/classpath/configure
index 95e5916d1..d95a4df9c 100755
--- a/gcc-4.6/libjava/classpath/configure
+++ b/gcc-4.6/libjava/classpath/configure
@@ -10040,7 +10040,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
+ freebsd2.*)
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes
hardcode_minus_L=yes
@@ -10956,7 +10956,7 @@ freebsd* | dragonfly*)
objformat=`/usr/bin/objformat`
else
case $host_os in
- freebsd[123]*) objformat=aout ;;
+ freebsd[23].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
@@ -10974,7 +10974,7 @@ freebsd* | dragonfly*)
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[01]* | freebsdelf3.[01]*)
@@ -14240,7 +14240,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
esac
;;
- freebsd[12]*)
+ freebsd2.*)
# C++ shared libraries reported to be fairly broken before
# switch to ELF
ld_shlibs_CXX=no
@@ -16015,7 +16015,7 @@ freebsd* | dragonfly*)
objformat=`/usr/bin/objformat`
else
case $host_os in
- freebsd[123]*) objformat=aout ;;
+ freebsd[23].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
@@ -16033,7 +16033,7 @@ freebsd* | dragonfly*)
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[01]* | freebsdelf3.[01]*)
diff --git a/gcc-4.6/libjava/configure b/gcc-4.6/libjava/configure
index d25a1799f..75c2e8cc8 100755
--- a/gcc-4.6/libjava/configure
+++ b/gcc-4.6/libjava/configure
@@ -11575,7 +11575,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
+ freebsd2.*)
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes
hardcode_minus_L=yes
@@ -12491,7 +12491,7 @@ freebsd* | dragonfly*)
objformat=`/usr/bin/objformat`
else
case $host_os in
- freebsd[123]*) objformat=aout ;;
+ freebsd[23].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
@@ -12509,7 +12509,7 @@ freebsd* | dragonfly*)
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[01]* | freebsdelf3.[01]*)
@@ -14399,7 +14399,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
esac
;;
- freebsd[12]*)
+ freebsd2.*)
# C++ shared libraries reported to be fairly broken before
# switch to ELF
ld_shlibs_CXX=no
@@ -16174,7 +16174,7 @@ freebsd* | dragonfly*)
objformat=`/usr/bin/objformat`
else
case $host_os in
- freebsd[123]*) objformat=aout ;;
+ freebsd[23].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
@@ -16192,7 +16192,7 @@ freebsd* | dragonfly*)
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[01]* | freebsdelf3.[01]*)
@@ -18535,7 +18535,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
+ freebsd2.*)
archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct_GCJ=yes
hardcode_minus_L_GCJ=yes
@@ -20730,7 +20730,7 @@ case "$THREADS" in
*-*-cygwin*)
# Don't set THREADLIBS here. Cygwin doesn't have -lpthread.
;;
- *-*-freebsd[1234]*)
+ *-*-freebsd[34].*)
# Before FreeBSD 5, it didn't have -lpthread (or any library which
# merely adds pthread_* functions) but it does have a -pthread switch
# which is required at link-time to select -lc_r *instead* of -lc.
diff --git a/gcc-4.6/libjava/configure.ac b/gcc-4.6/libjava/configure.ac
index 805c519e2..b8f299dca 100644
--- a/gcc-4.6/libjava/configure.ac
+++ b/gcc-4.6/libjava/configure.ac
@@ -1060,7 +1060,7 @@ case "$THREADS" in
*-*-cygwin*)
# Don't set THREADLIBS here. Cygwin doesn't have -lpthread.
;;
- *-*-freebsd[[1234]]*)
+ *-*-freebsd[[34]].*)
# Before FreeBSD 5, it didn't have -lpthread (or any library which
# merely adds pthread_* functions) but it does have a -pthread switch
# which is required at link-time to select -lc_r *instead* of -lc.
diff --git a/gcc-4.6/libjava/include/dwarf2-signal.h b/gcc-4.6/libjava/include/dwarf2-signal.h
index 949bcc0ae..812968217 100644
--- a/gcc-4.6/libjava/include/dwarf2-signal.h
+++ b/gcc-4.6/libjava/include/dwarf2-signal.h
@@ -29,20 +29,7 @@ class java::lang::Throwable;
// then throw an exception. With the dwarf2 unwinder we don't usually
// need to do anything, with some minor exceptions.
-#ifdef __alpha__
-#define MAKE_THROW_FRAME(_exception) \
-do \
-{ \
- /* Alpha either leaves PC pointing at a faulting instruction or the \
- following instruction, depending on the signal. SEGV always does \
- the former, so we adjust the saved PC to point to the following \
- instruction; this is what the handler in libgcc expects. */ \
- struct sigcontext *_sc = (struct sigcontext *)_p; \
- _sc->sc_pc += 4; \
-} \
-while (0)
-
-#elif defined(__ia64__)
+#ifdef __ia64__
#define MAKE_THROW_FRAME(_exception) \
do \
diff --git a/gcc-4.6/libjava/java/lang/natClass.cc b/gcc-4.6/libjava/java/lang/natClass.cc
index 9f9f05ed8..d6969d49b 100644
--- a/gcc-4.6/libjava/java/lang/natClass.cc
+++ b/gcc-4.6/libjava/java/lang/natClass.cc
@@ -668,7 +668,9 @@ java::lang::Class::newInstance (void)
void
java::lang::Class::finalize (void)
{
- engine->unregister(this);
+ // Array classes don't have an engine, and don't need to be finalized.
+ if (engine)
+ engine->unregister(this);
}
#ifdef INTERPRETER
diff --git a/gcc-4.6/libjava/libltdl/ChangeLog b/gcc-4.6/libjava/libltdl/ChangeLog
index 06bafa095..f2a91dbba 100644
--- a/gcc-4.6/libjava/libltdl/ChangeLog
+++ b/gcc-4.6/libjava/libltdl/ChangeLog
@@ -1,3 +1,12 @@
+2011-11-20 Andreas Tobler <andreast@fgznet.ch>
+
+ * acinclude.m4: Additional FreeBSD 10 fixes.
+ * configure: Regenerate.
+
+2011-10-26 Release Manager
+
+ * GCC 4.6.2 released.
+
2011-06-27 Release Manager
* GCC 4.6.1 released.
diff --git a/gcc-4.6/libjava/libltdl/acinclude.m4 b/gcc-4.6/libjava/libltdl/acinclude.m4
index 55beab162..d77a1a399 100644
--- a/gcc-4.6/libjava/libltdl/acinclude.m4
+++ b/gcc-4.6/libjava/libltdl/acinclude.m4
@@ -1377,7 +1377,7 @@ freebsd* | dragonfly*)
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[[01]]* | freebsdelf3.[[01]]*)
@@ -3035,7 +3035,7 @@ case $host_os in
;;
esac
;;
- freebsd[[12]]*)
+ freebsd2.*)
# C++ shared libraries reported to be fairly broken before switch to ELF
_LT_AC_TAGVAR(ld_shlibs, $1)=no
;;
@@ -5669,7 +5669,7 @@ EOF
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
+ freebsd2.*)
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
_LT_AC_TAGVAR(hardcode_direct, $1)=yes
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
diff --git a/gcc-4.6/libjava/libltdl/configure b/gcc-4.6/libjava/libltdl/configure
index f47d95f73..35b89dc55 100755
--- a/gcc-4.6/libjava/libltdl/configure
+++ b/gcc-4.6/libjava/libltdl/configure
@@ -7355,7 +7355,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
+ freebsd2.*)
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes
hardcode_minus_L=yes
@@ -7968,7 +7968,7 @@ freebsd* | dragonfly*)
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[01]* | freebsdelf3.[01]*)
diff --git a/gcc-4.6/libjava/prims.cc b/gcc-4.6/libjava/prims.cc
index 90f8dc5ca..652cf5b4a 100644
--- a/gcc-4.6/libjava/prims.cc
+++ b/gcc-4.6/libjava/prims.cc
@@ -38,7 +38,6 @@ details. */
#endif
#ifndef DISABLE_GETENV_PROPERTIES
-#include <ctype.h>
#include <java-props.h>
#define PROCESS_GCJ_PROPERTIES process_gcj_properties()
#else
@@ -985,6 +984,8 @@ static java::lang::Thread *main_thread;
#ifndef DISABLE_GETENV_PROPERTIES
+#define c_isspace(c) (memchr (" \t\n\r\v\f", c, 6) != NULL)
+
static char *
next_property_key (char *s, size_t *length)
{
@@ -993,7 +994,7 @@ next_property_key (char *s, size_t *length)
JvAssert (s);
// Skip over whitespace
- while (isspace (*s))
+ while (c_isspace (*s))
s++;
// If we've reached the end, return NULL. Also return NULL if for
@@ -1005,7 +1006,7 @@ next_property_key (char *s, size_t *length)
// Determine the length of the property key.
while (s[l] != 0
- && ! isspace (s[l])
+ && ! c_isspace (s[l])
&& s[l] != ':'
&& s[l] != '=')
{
@@ -1027,19 +1028,19 @@ next_property_value (char *s, size_t *length)
JvAssert (s);
- while (isspace (*s))
+ while (c_isspace (*s))
s++;
if (*s == ':'
|| *s == '=')
s++;
- while (isspace (*s))
+ while (c_isspace (*s))
s++;
// Determine the length of the property value.
while (s[l] != 0
- && ! isspace (s[l])
+ && ! c_isspace (s[l])
&& s[l] != ':'
&& s[l] != '=')
{