mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-26 12:23:59 +08:00
ia64-frame.h: Removed.
2005-11-24 Bryce McKinlay <mckinlay@redhat.com> * sysdep/ia64-frame.h: Removed. * sysdep/ia64.c: Removed. * sysdep/dwarf2-backtrace.cc: Removed. * configure.ac: Remove references to HAVE_BACKTRACE and SUPPLY_BACKTRACE. * Makefile.am: Remove SUPPLY_BACKTRACE support. * configure: Rebuilt. * Makefile.in: Rebuilt. From-SVN: r107486
This commit is contained in:
parent
57904aa711
commit
4ca6f88ae8
@ -1,3 +1,14 @@
|
||||
2005-11-24 Bryce McKinlay <mckinlay@redhat.com>
|
||||
|
||||
* sysdep/ia64-frame.h: Removed.
|
||||
* sysdep/ia64.c: Removed.
|
||||
* sysdep/dwarf2-backtrace.cc: Removed.
|
||||
* configure.ac: Remove references to HAVE_BACKTRACE and
|
||||
SUPPLY_BACKTRACE.
|
||||
* Makefile.am: Remove SUPPLY_BACKTRACE support.
|
||||
* configure: Rebuilt.
|
||||
* Makefile.in: Rebuilt.
|
||||
|
||||
2005-11-24 Bryce McKinlay <mckinlay@redhat.com>
|
||||
|
||||
* gij.cc (nonstandard_opts_help): Add entry for -Xss.
|
||||
|
@ -190,10 +190,6 @@ if USING_NOGC
|
||||
libgcj_la_SOURCES += nogc.cc
|
||||
endif
|
||||
|
||||
if SUPPLY_BACKTRACE
|
||||
libgcj_la_SOURCES += sysdep/dwarf2-backtrace.cc
|
||||
endif
|
||||
|
||||
if USING_POSIX_PLATFORM
|
||||
libgcj_la_SOURCES += posix.cc
|
||||
endif
|
||||
|
@ -52,13 +52,12 @@ target_triplet = @target@
|
||||
@USING_GCC_TRUE@am__append_5 = $(WARNINGS)
|
||||
@USING_BOEHMGC_TRUE@am__append_6 = boehm.cc
|
||||
@USING_NOGC_TRUE@am__append_7 = nogc.cc
|
||||
@SUPPLY_BACKTRACE_TRUE@am__append_8 = sysdep/dwarf2-backtrace.cc
|
||||
@USING_POSIX_PLATFORM_TRUE@am__append_9 = posix.cc
|
||||
@USING_WIN32_PLATFORM_TRUE@am__append_10 = win32.cc
|
||||
@USING_DARWIN_CRT_TRUE@am__append_11 = darwin.cc
|
||||
@USING_POSIX_THREADS_TRUE@am__append_12 = posix-threads.cc
|
||||
@USING_WIN32_THREADS_TRUE@am__append_13 = win32-threads.cc
|
||||
@USING_NO_THREADS_TRUE@am__append_14 = no-threads.cc
|
||||
@USING_POSIX_PLATFORM_TRUE@am__append_8 = posix.cc
|
||||
@USING_WIN32_PLATFORM_TRUE@am__append_9 = win32.cc
|
||||
@USING_DARWIN_CRT_TRUE@am__append_10 = darwin.cc
|
||||
@USING_POSIX_THREADS_TRUE@am__append_11 = posix-threads.cc
|
||||
@USING_WIN32_THREADS_TRUE@am__append_12 = win32-threads.cc
|
||||
@USING_NO_THREADS_TRUE@am__append_13 = no-threads.cc
|
||||
DIST_COMMON = README $(am__configure_deps) $(srcdir)/../compile \
|
||||
$(srcdir)/../config.guess $(srcdir)/../config.sub \
|
||||
$(srcdir)/../depcomp $(srcdir)/../install-sh \
|
||||
@ -70,7 +69,7 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/../compile \
|
||||
NEWS THANKS
|
||||
@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@noinst_PROGRAMS = \
|
||||
@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gen-from-JIS$(EXEEXT)
|
||||
@XLIB_AWT_TRUE@am__append_15 = $(xlib_nat_headers)
|
||||
@XLIB_AWT_TRUE@am__append_14 = $(xlib_nat_headers)
|
||||
subdir = .
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
|
||||
@ -256,9 +255,9 @@ am__libgcj_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
|
||||
java/nio/natDirectByteBufferImpl.cc java/text/natCollator.cc \
|
||||
java/util/natResourceBundle.cc java/util/natVMTimeZone.cc \
|
||||
java/util/logging/natLogger.cc java/util/zip/natDeflater.cc \
|
||||
java/util/zip/natInflater.cc boehm.cc nogc.cc \
|
||||
sysdep/dwarf2-backtrace.cc posix.cc win32.cc darwin.cc \
|
||||
posix-threads.cc win32-threads.cc no-threads.cc
|
||||
java/util/zip/natInflater.cc boehm.cc nogc.cc posix.cc \
|
||||
win32.cc darwin.cc posix-threads.cc win32-threads.cc \
|
||||
no-threads.cc
|
||||
am__objects_2 = gnu/classpath/natSystemProperties.lo \
|
||||
gnu/gcj/natCore.lo gnu/gcj/convert/JIS0208_to_Unicode.lo \
|
||||
gnu/gcj/convert/JIS0212_to_Unicode.lo \
|
||||
@ -299,19 +298,18 @@ am__objects_2 = gnu/classpath/natSystemProperties.lo \
|
||||
java/util/zip/natInflater.lo
|
||||
@USING_BOEHMGC_TRUE@am__objects_3 = boehm.lo
|
||||
@USING_NOGC_TRUE@am__objects_4 = nogc.lo
|
||||
@SUPPLY_BACKTRACE_TRUE@am__objects_5 = sysdep/dwarf2-backtrace.lo
|
||||
@USING_POSIX_PLATFORM_TRUE@am__objects_6 = posix.lo
|
||||
@USING_WIN32_PLATFORM_TRUE@am__objects_7 = win32.lo
|
||||
@USING_DARWIN_CRT_TRUE@am__objects_8 = darwin.lo
|
||||
@USING_POSIX_THREADS_TRUE@am__objects_9 = posix-threads.lo
|
||||
@USING_WIN32_THREADS_TRUE@am__objects_10 = win32-threads.lo
|
||||
@USING_NO_THREADS_TRUE@am__objects_11 = no-threads.lo
|
||||
@USING_POSIX_PLATFORM_TRUE@am__objects_5 = posix.lo
|
||||
@USING_WIN32_PLATFORM_TRUE@am__objects_6 = win32.lo
|
||||
@USING_DARWIN_CRT_TRUE@am__objects_7 = darwin.lo
|
||||
@USING_POSIX_THREADS_TRUE@am__objects_8 = posix-threads.lo
|
||||
@USING_WIN32_THREADS_TRUE@am__objects_9 = win32-threads.lo
|
||||
@USING_NO_THREADS_TRUE@am__objects_10 = no-threads.lo
|
||||
am_libgcj_la_OBJECTS = prims.lo jni.lo exception.lo stacktrace.lo \
|
||||
link.lo defineclass.lo interpret.lo verify.lo \
|
||||
java/lang/Class.lo java/lang/Object.lo $(am__objects_2) \
|
||||
$(am__objects_3) $(am__objects_4) $(am__objects_5) \
|
||||
$(am__objects_6) $(am__objects_7) $(am__objects_8) \
|
||||
$(am__objects_9) $(am__objects_10) $(am__objects_11)
|
||||
$(am__objects_9) $(am__objects_10)
|
||||
libgcj_la_OBJECTS = $(am_libgcj_la_OBJECTS)
|
||||
libgcjawt_la_DEPENDENCIES = lib-gnu-java-awt-peer-gtk.la
|
||||
am_libgcjawt_la_OBJECTS = classpath/native/jawt/libgcjawt_la-jawt.lo
|
||||
@ -515,8 +513,6 @@ RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
SUPPLY_BACKTRACE_FALSE = @SUPPLY_BACKTRACE_FALSE@
|
||||
SUPPLY_BACKTRACE_TRUE = @SUPPLY_BACKTRACE_TRUE@
|
||||
SYSDEP_SOURCES = @SYSDEP_SOURCES@
|
||||
SYSTEMSPEC = @SYSTEMSPEC@
|
||||
SYS_ZLIBS = @SYS_ZLIBS@
|
||||
@ -719,7 +715,7 @@ libgcj_la_SOURCES = prims.cc jni.cc exception.cc stacktrace.cc link.cc \
|
||||
java/lang/Object.java $(nat_source_files) $(am__append_6) \
|
||||
$(am__append_7) $(am__append_8) $(am__append_9) \
|
||||
$(am__append_10) $(am__append_11) $(am__append_12) \
|
||||
$(am__append_13) $(am__append_14)
|
||||
$(am__append_13)
|
||||
nat_files = $(nat_source_files:.cc=.lo)
|
||||
xlib_nat_files = $(xlib_nat_source_files:.cc=.lo)
|
||||
|
||||
@ -5200,7 +5196,7 @@ gnu/gcj/xlib/natXImage.cc \
|
||||
gnu/gcj/xlib/natXUnmapEvent.cc
|
||||
|
||||
sourcesdir = $(jardir)
|
||||
headers_to_make = $(nat_headers) $(am__append_15)
|
||||
headers_to_make = $(nat_headers) $(am__append_14)
|
||||
|
||||
# Work around what appears to be a GNU make bug handling MAKEFLAGS
|
||||
# values defined in terms of make variables, as is the case for CC and
|
||||
@ -5656,14 +5652,6 @@ java/util/zip/natDeflater.lo: java/util/zip/$(am__dirstamp) \
|
||||
java/util/zip/$(DEPDIR)/$(am__dirstamp)
|
||||
java/util/zip/natInflater.lo: java/util/zip/$(am__dirstamp) \
|
||||
java/util/zip/$(DEPDIR)/$(am__dirstamp)
|
||||
sysdep/$(am__dirstamp):
|
||||
@$(mkdir_p) sysdep
|
||||
@: > sysdep/$(am__dirstamp)
|
||||
sysdep/$(DEPDIR)/$(am__dirstamp):
|
||||
@$(mkdir_p) sysdep/$(DEPDIR)
|
||||
@: > sysdep/$(DEPDIR)/$(am__dirstamp)
|
||||
sysdep/dwarf2-backtrace.lo: sysdep/$(am__dirstamp) \
|
||||
sysdep/$(DEPDIR)/$(am__dirstamp)
|
||||
libgcj.la: $(libgcj_la_OBJECTS) $(libgcj_la_DEPENDENCIES)
|
||||
$(libgcj_la_LINK) -rpath $(toolexeclibdir) $(libgcj_la_LDFLAGS) $(libgcj_la_OBJECTS) $(libgcj_la_LIBADD) $(LIBS)
|
||||
classpath/native/jawt/$(am__dirstamp):
|
||||
@ -5939,8 +5927,6 @@ mostlyclean-compile:
|
||||
-rm -f java/util/zip/natDeflater.lo
|
||||
-rm -f java/util/zip/natInflater.$(OBJEXT)
|
||||
-rm -f java/util/zip/natInflater.lo
|
||||
-rm -f sysdep/dwarf2-backtrace.$(OBJEXT)
|
||||
-rm -f sysdep/dwarf2-backtrace.lo
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
@ -6048,7 +6034,6 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@java/util/logging/$(DEPDIR)/natLogger.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@java/util/zip/$(DEPDIR)/natDeflater.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@java/util/zip/$(DEPDIR)/natInflater.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@sysdep/$(DEPDIR)/dwarf2-backtrace.Plo@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`; \
|
||||
@ -6298,7 +6283,6 @@ clean-libtool:
|
||||
-rm -rf java/util/.libs java/util/_libs
|
||||
-rm -rf java/util/logging/.libs java/util/logging/_libs
|
||||
-rm -rf java/util/zip/.libs java/util/zip/_libs
|
||||
-rm -rf sysdep/.libs sysdep/_libs
|
||||
|
||||
distclean-libtool:
|
||||
-rm -f libtool
|
||||
@ -6713,8 +6697,6 @@ distclean-generic:
|
||||
-rm -f java/util/logging/$(am__dirstamp)
|
||||
-rm -f java/util/zip/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f java/util/zip/$(am__dirstamp)
|
||||
-rm -f sysdep/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f sysdep/$(am__dirstamp)
|
||||
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@ -6728,7 +6710,7 @@ clean-am: clean-binPROGRAMS clean-generic clean-libtool \
|
||||
|
||||
distclean: distclean-recursive
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -rf ./$(DEPDIR) classpath/native/jawt/$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/zip/$(DEPDIR) sysdep/$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) classpath/native/jawt/$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/zip/$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-local distclean-tags
|
||||
@ -6759,7 +6741,7 @@ installcheck-am:
|
||||
maintainer-clean: maintainer-clean-recursive
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -rf $(top_srcdir)/autom4te.cache
|
||||
-rm -rf ./$(DEPDIR) classpath/native/jawt/$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/zip/$(DEPDIR) sysdep/$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) classpath/native/jawt/$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/zip/$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
|
159
libjava/configure
vendored
159
libjava/configure
vendored
@ -310,7 +310,7 @@ ac_includes_default="\
|
||||
# include <unistd.h>
|
||||
#endif"
|
||||
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_subdir host_subdir target_subdir libgcj_basedir host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical LN_S mkinstalldirs CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LDFLAGS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBGCJ_CFLAGS LIBGCJ_CXXFLAGS LIBGCJ_JAVAFLAGS LIBGCJ_LD_SYMBOLIC LIBGCJDEBUG TOOLKIT XLIB_AWT_TRUE XLIB_AWT_FALSE GTK_AWT_TRUE GTK_AWT_FALSE QT_AWT_TRUE QT_AWT_FALSE GCJH ZIP INCLTDL LIBLTDL DIRLTDL LIBTOOL CXXCPP CPPFLAGS GCJ GCJFLAGS GCJDEPMODE am__fastdepGCJ_TRUE am__fastdepGCJ_FALSE subdirs TESTSUBDIR_TRUE TESTSUBDIR_FALSE JAVA_HOME_SET_TRUE JAVA_HOME_SET_FALSE JAVA_HOME INTERPRETER LIBFFI LIBFFIINCS PLATFORM_INNER_NAT_HDRS CPP EGREP USING_WIN32_PLATFORM_TRUE USING_WIN32_PLATFORM_FALSE USING_POSIX_PLATFORM_TRUE USING_POSIX_PLATFORM_FALSE USING_DARWIN_CRT_TRUE USING_DARWIN_CRT_FALSE SYSTEMSPEC LIBGCJTESTSPEC ZLIBSPEC ZLIBTESTSPEC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS GTK_CAIRO_TRUE GTK_CAIRO_FALSE PKG_CONFIG CAIRO_CFLAGS CAIRO_LIBS PANGOFT2_CFLAGS PANGOFT2_LIBS extra_ldflags_libjava GCLIBS GCINCS GCDEPS GCSPEC JC1GCSPEC GCTESTSPEC USING_BOEHMGC_TRUE USING_BOEHMGC_FALSE USING_NOGC_TRUE USING_NOGC_FALSE THREADLIBS THREADINCS THREADDEPS THREADSPEC THREADLDFLAGS THREADCXXFLAGS USING_POSIX_THREADS_TRUE USING_POSIX_THREADS_FALSE USING_WIN32_THREADS_TRUE USING_WIN32_THREADS_FALSE USING_NO_THREADS_TRUE USING_NO_THREADS_FALSE HASH_SYNC_SPEC USING_GCC_TRUE USING_GCC_FALSE LIBICONV LTLIBICONV GTK_CFLAGS GTK_LIBS GLIB_CFLAGS GLIB_LIBS LIBART_CFLAGS LIBART_LIBS SUPPLY_BACKTRACE_TRUE SUPPLY_BACKTRACE_FALSE CLASSPATH_SEPARATOR ac_ct_GCJ ZLIBS SYS_ZLIBS ZINCS DIVIDESPEC CHECKREFSPEC EXCEPTIONSPEC BACKTRACESPEC IEEESPEC NATIVE_TRUE NATIVE_FALSE NEEDS_DATA_START_TRUE NEEDS_DATA_START_FALSE GCC_UNWIND_INCLUDE toolexecdir toolexecmainlibdir toolexeclibdir GCJVERSION gxx_include_dir libstdcxx_incdir ALLOCA PERL SYSDEP_SOURCES here LIBOBJS LTLIBOBJS'
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_subdir host_subdir target_subdir libgcj_basedir host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical LN_S mkinstalldirs CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LDFLAGS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBGCJ_CFLAGS LIBGCJ_CXXFLAGS LIBGCJ_JAVAFLAGS LIBGCJ_LD_SYMBOLIC LIBGCJDEBUG TOOLKIT XLIB_AWT_TRUE XLIB_AWT_FALSE GTK_AWT_TRUE GTK_AWT_FALSE QT_AWT_TRUE QT_AWT_FALSE GCJH ZIP INCLTDL LIBLTDL DIRLTDL LIBTOOL CXXCPP CPPFLAGS GCJ GCJFLAGS GCJDEPMODE am__fastdepGCJ_TRUE am__fastdepGCJ_FALSE subdirs TESTSUBDIR_TRUE TESTSUBDIR_FALSE JAVA_HOME_SET_TRUE JAVA_HOME_SET_FALSE JAVA_HOME INTERPRETER LIBFFI LIBFFIINCS PLATFORM_INNER_NAT_HDRS CPP EGREP USING_WIN32_PLATFORM_TRUE USING_WIN32_PLATFORM_FALSE USING_POSIX_PLATFORM_TRUE USING_POSIX_PLATFORM_FALSE USING_DARWIN_CRT_TRUE USING_DARWIN_CRT_FALSE SYSTEMSPEC LIBGCJTESTSPEC ZLIBSPEC ZLIBTESTSPEC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS GTK_CAIRO_TRUE GTK_CAIRO_FALSE PKG_CONFIG CAIRO_CFLAGS CAIRO_LIBS PANGOFT2_CFLAGS PANGOFT2_LIBS extra_ldflags_libjava GCLIBS GCINCS GCDEPS GCSPEC JC1GCSPEC GCTESTSPEC USING_BOEHMGC_TRUE USING_BOEHMGC_FALSE USING_NOGC_TRUE USING_NOGC_FALSE THREADLIBS THREADINCS THREADDEPS THREADSPEC THREADLDFLAGS THREADCXXFLAGS USING_POSIX_THREADS_TRUE USING_POSIX_THREADS_FALSE USING_WIN32_THREADS_TRUE USING_WIN32_THREADS_FALSE USING_NO_THREADS_TRUE USING_NO_THREADS_FALSE HASH_SYNC_SPEC USING_GCC_TRUE USING_GCC_FALSE LIBICONV LTLIBICONV GTK_CFLAGS GTK_LIBS GLIB_CFLAGS GLIB_LIBS LIBART_CFLAGS LIBART_LIBS CLASSPATH_SEPARATOR ac_ct_GCJ ZLIBS SYS_ZLIBS ZINCS DIVIDESPEC CHECKREFSPEC EXCEPTIONSPEC BACKTRACESPEC IEEESPEC NATIVE_TRUE NATIVE_FALSE NEEDS_DATA_START_TRUE NEEDS_DATA_START_FALSE GCC_UNWIND_INCLUDE toolexecdir toolexecmainlibdir toolexeclibdir GCJVERSION gxx_include_dir libstdcxx_incdir ALLOCA PERL SYSDEP_SOURCES here LIBOBJS LTLIBOBJS'
|
||||
ac_subst_files=''
|
||||
|
||||
# Initialize some variables set by options.
|
||||
@ -6722,8 +6722,6 @@ if test "${with_ecos+set}" = set; then
|
||||
|
||||
fi;
|
||||
|
||||
supply_backtrace=no
|
||||
|
||||
PLATFORM_INNER_NAT_HDRS=
|
||||
case "$TARGET_ECOS" in
|
||||
no) case "$host" in
|
||||
@ -9920,142 +9918,6 @@ fi
|
||||
|
||||
done
|
||||
|
||||
echo "$as_me:$LINENO: checking for backtrace" >&5
|
||||
echo $ECHO_N "checking for backtrace... $ECHO_C" >&6
|
||||
if test "${ac_cv_func_backtrace+set}" = set; then
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
if test x$gcc_no_link = xyes; then
|
||||
{ { echo "$as_me:$LINENO: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&5
|
||||
echo "$as_me: error: Link tests are not allowed after GCC_NO_EXECUTABLES." >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
fi
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
/* confdefs.h. */
|
||||
_ACEOF
|
||||
cat confdefs.h >>conftest.$ac_ext
|
||||
cat >>conftest.$ac_ext <<_ACEOF
|
||||
/* end confdefs.h. */
|
||||
/* Define backtrace to an innocuous variant, in case <limits.h> declares backtrace.
|
||||
For example, HP-UX 11i <limits.h> declares gettimeofday. */
|
||||
#define backtrace innocuous_backtrace
|
||||
|
||||
/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char backtrace (); below.
|
||||
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
|
||||
<limits.h> exists even on freestanding compilers. */
|
||||
|
||||
#ifdef __STDC__
|
||||
# include <limits.h>
|
||||
#else
|
||||
# include <assert.h>
|
||||
#endif
|
||||
|
||||
#undef backtrace
|
||||
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
/* We use char because int might match the return type of a gcc2
|
||||
builtin and then its argument prototype would still apply. */
|
||||
char backtrace ();
|
||||
/* The GNU C library defines this for functions which it implements
|
||||
to always fail with ENOSYS. Some functions are actually named
|
||||
something starting with __ and the normal name is an alias. */
|
||||
#if defined (__stub_backtrace) || defined (__stub___backtrace)
|
||||
choke me
|
||||
#else
|
||||
char (*f) () = backtrace;
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
return f != backtrace;
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
_ACEOF
|
||||
rm -f conftest.$ac_objext conftest$ac_exeext
|
||||
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
|
||||
(eval $ac_link) 2>conftest.er1
|
||||
ac_status=$?
|
||||
grep -v '^ *+' conftest.er1 >conftest.err
|
||||
rm -f conftest.er1
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); } &&
|
||||
{ ac_try='test -z "$ac_c_werror_flag"
|
||||
|| test ! -s conftest.err'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; } &&
|
||||
{ ac_try='test -s conftest$ac_exeext'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; }; then
|
||||
ac_cv_func_backtrace=yes
|
||||
else
|
||||
echo "$as_me: failed program was:" >&5
|
||||
sed 's/^/| /' conftest.$ac_ext >&5
|
||||
|
||||
ac_cv_func_backtrace=no
|
||||
fi
|
||||
rm -f conftest.err conftest.$ac_objext \
|
||||
conftest$ac_exeext conftest.$ac_ext
|
||||
fi
|
||||
echo "$as_me:$LINENO: result: $ac_cv_func_backtrace" >&5
|
||||
echo "${ECHO_T}$ac_cv_func_backtrace" >&6
|
||||
if test $ac_cv_func_backtrace = yes; then
|
||||
|
||||
case "$host" in
|
||||
ia64-*-linux*)
|
||||
# Has broken backtrace()
|
||||
;;
|
||||
mips*-*-linux*)
|
||||
# Has broken backtrace(), but we supply our own.
|
||||
if test -d sysdep; then true; else mkdir -p sysdep; fi
|
||||
supply_backtrace=yes
|
||||
|
||||
cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_BACKTRACE 1
|
||||
_ACEOF
|
||||
|
||||
;;
|
||||
*)
|
||||
|
||||
cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_BACKTRACE 1
|
||||
_ACEOF
|
||||
|
||||
;;
|
||||
esac
|
||||
|
||||
else
|
||||
|
||||
case "$host" in
|
||||
*mingw*)
|
||||
# Has backtrace() defined in libgcj itself
|
||||
|
||||
cat >>confdefs.h <<\_ACEOF
|
||||
#define HAVE_BACKTRACE 1
|
||||
_ACEOF
|
||||
|
||||
;;
|
||||
esac
|
||||
|
||||
fi
|
||||
|
||||
|
||||
echo "$as_me:$LINENO: checking for dladdr in -ldl" >&5
|
||||
echo $ECHO_N "checking for dladdr in -ldl... $ECHO_C" >&6
|
||||
if test "${ac_cv_lib_dl_dladdr+set}" = set; then
|
||||
@ -13988,16 +13850,6 @@ fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if test "$supply_backtrace" = yes; then
|
||||
SUPPLY_BACKTRACE_TRUE=
|
||||
SUPPLY_BACKTRACE_FALSE='#'
|
||||
else
|
||||
SUPPLY_BACKTRACE_TRUE='#'
|
||||
SUPPLY_BACKTRACE_FALSE=
|
||||
fi
|
||||
|
||||
|
||||
# Use a semicolon as CLASSPATH separator for MinGW, otherwise a colon.
|
||||
case $build in
|
||||
*-mingw32) CLASSPATH_SEPARATOR=';' ;;
|
||||
@ -17118,13 +16970,6 @@ echo "$as_me: error: conditional \"USING_GCC\" was never defined.
|
||||
Usually this means the macro was only invoked conditionally." >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
fi
|
||||
if test -z "${SUPPLY_BACKTRACE_TRUE}" && test -z "${SUPPLY_BACKTRACE_FALSE}"; then
|
||||
{ { echo "$as_me:$LINENO: error: conditional \"SUPPLY_BACKTRACE\" was never defined.
|
||||
Usually this means the macro was only invoked conditionally." >&5
|
||||
echo "$as_me: error: conditional \"SUPPLY_BACKTRACE\" was never defined.
|
||||
Usually this means the macro was only invoked conditionally." >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
fi
|
||||
if test -z "${NATIVE_TRUE}" && test -z "${NATIVE_FALSE}"; then
|
||||
{ { echo "$as_me:$LINENO: error: conditional \"NATIVE\" was never defined.
|
||||
Usually this means the macro was only invoked conditionally." >&5
|
||||
@ -17875,8 +17720,6 @@ s,@GLIB_CFLAGS@,$GLIB_CFLAGS,;t t
|
||||
s,@GLIB_LIBS@,$GLIB_LIBS,;t t
|
||||
s,@LIBART_CFLAGS@,$LIBART_CFLAGS,;t t
|
||||
s,@LIBART_LIBS@,$LIBART_LIBS,;t t
|
||||
s,@SUPPLY_BACKTRACE_TRUE@,$SUPPLY_BACKTRACE_TRUE,;t t
|
||||
s,@SUPPLY_BACKTRACE_FALSE@,$SUPPLY_BACKTRACE_FALSE,;t t
|
||||
s,@CLASSPATH_SEPARATOR@,$CLASSPATH_SEPARATOR,;t t
|
||||
s,@ac_ct_GCJ@,$ac_ct_GCJ,;t t
|
||||
s,@ZLIBS@,$ZLIBS,;t t
|
||||
|
@ -568,8 +568,6 @@ AC_ARG_WITH(ecos,
|
||||
TARGET_ECOS="$with_ecos"
|
||||
)
|
||||
|
||||
supply_backtrace=no
|
||||
|
||||
PLATFORM_INNER_NAT_HDRS=
|
||||
case "$TARGET_ECOS" in
|
||||
no) case "$host" in
|
||||
@ -902,33 +900,6 @@ else
|
||||
fork execvp pipe sigaction ftruncate])
|
||||
AC_CHECK_FUNCS(inet_aton inet_addr, break)
|
||||
AC_CHECK_HEADERS(execinfo.h unistd.h dlfcn.h)
|
||||
AC_CHECK_FUNC(backtrace, [
|
||||
case "$host" in
|
||||
ia64-*-linux*)
|
||||
# Has broken backtrace()
|
||||
;;
|
||||
mips*-*-linux*)
|
||||
# Has broken backtrace(), but we supply our own.
|
||||
if test -d sysdep; then true; else mkdir -p sysdep; fi
|
||||
supply_backtrace=yes
|
||||
AC_DEFINE(HAVE_BACKTRACE, 1,
|
||||
[Define if your platform has a working backtrace() function.])
|
||||
;;
|
||||
*)
|
||||
AC_DEFINE(HAVE_BACKTRACE, 1,
|
||||
[Define if your platform has a working backtrace() function.])
|
||||
;;
|
||||
esac
|
||||
], [
|
||||
case "$host" in
|
||||
*mingw*)
|
||||
# Has backtrace() defined in libgcj itself
|
||||
AC_DEFINE(HAVE_BACKTRACE, 1,
|
||||
[Define if your platform has a working backtrace() function.])
|
||||
;;
|
||||
esac
|
||||
])
|
||||
|
||||
AC_CHECK_LIB(dl, dladdr, [
|
||||
if test "x${disable_dladdr}" = "xyes"; then
|
||||
#Broken dladdr().
|
||||
@ -1162,7 +1133,6 @@ else
|
||||
AC_CHECK_LIB(dl, main, SYSTEMSPEC="$SYSTEMSPEC -ldl")
|
||||
fi
|
||||
fi
|
||||
AM_CONDITIONAL(SUPPLY_BACKTRACE, test "$supply_backtrace" = yes)
|
||||
|
||||
# Use a semicolon as CLASSPATH separator for MinGW, otherwise a colon.
|
||||
case $build in
|
||||
|
@ -188,8 +188,6 @@ RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
SUPPLY_BACKTRACE_FALSE = @SUPPLY_BACKTRACE_FALSE@
|
||||
SUPPLY_BACKTRACE_TRUE = @SUPPLY_BACKTRACE_TRUE@
|
||||
SYSDEP_SOURCES = @SYSDEP_SOURCES@
|
||||
SYSTEMSPEC = @SYSTEMSPEC@
|
||||
SYS_ZLIBS = @SYS_ZLIBS@
|
||||
|
@ -187,8 +187,6 @@ RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
SUPPLY_BACKTRACE_FALSE = @SUPPLY_BACKTRACE_FALSE@
|
||||
SUPPLY_BACKTRACE_TRUE = @SUPPLY_BACKTRACE_TRUE@
|
||||
SYSDEP_SOURCES = @SYSDEP_SOURCES@
|
||||
SYSTEMSPEC = @SYSTEMSPEC@
|
||||
SYS_ZLIBS = @SYS_ZLIBS@
|
||||
|
@ -1,86 +0,0 @@
|
||||
/* dwarf2-backtrac.cc - backtrace implementation driven by the dwarf2
|
||||
exception unwinder. */
|
||||
|
||||
/* Copyright (C) 2003 Free Software Foundation
|
||||
|
||||
This file is part of libgcj.
|
||||
|
||||
This software is copyrighted work licensed under the terms of the
|
||||
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
|
||||
details. */
|
||||
|
||||
/* Written by David Daney <ddaney@avtrex.com> */
|
||||
|
||||
/*
|
||||
Although this in theory could be 'C' instead of C++, saying that it
|
||||
is C++ and including jvm.h makes it easier to insure that the proper
|
||||
compiler options are used. There must be unwind tables for
|
||||
backtrace because it is on the stack when _Unwind_Backtrace is
|
||||
called. Compiling as C++ insures this.
|
||||
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <unwind.h>
|
||||
|
||||
#include <jvm.h>
|
||||
|
||||
|
||||
extern "C"
|
||||
{
|
||||
int backtrace (void **, int);
|
||||
}
|
||||
|
||||
struct backtrace_state
|
||||
{
|
||||
int skip_count;
|
||||
int current_level;
|
||||
int max_level;
|
||||
void **locations;
|
||||
};
|
||||
|
||||
static _Unwind_Reason_Code
|
||||
my_trace_fn (struct _Unwind_Context *uc, void *arg)
|
||||
{
|
||||
|
||||
struct backtrace_state *bs = (struct backtrace_state *) arg;
|
||||
|
||||
if (bs->skip_count)
|
||||
{
|
||||
bs->skip_count--;
|
||||
return _URC_NO_REASON;
|
||||
}
|
||||
|
||||
_Unwind_Ptr loc = _Unwind_GetIP (uc);
|
||||
|
||||
if (bs->current_level < bs->max_level)
|
||||
bs->locations[bs->current_level++] = (void *) loc;
|
||||
|
||||
if (bs->current_level >= bs->max_level)
|
||||
return _URC_END_OF_STACK;
|
||||
else
|
||||
return _URC_NO_REASON;
|
||||
}
|
||||
|
||||
/*
|
||||
* backtrace is defined in (some versions of) libc. This definition
|
||||
* must match so that it can replace the libc version at link time.
|
||||
*
|
||||
* Fill the locations array with at most len back trace locations.
|
||||
*
|
||||
* Returns the number of locations actually filled in.
|
||||
*
|
||||
*/
|
||||
int
|
||||
backtrace (void **locations, int len)
|
||||
{
|
||||
struct backtrace_state bs;
|
||||
bs.skip_count = 1; /* Don't log the call to backtrace itself. */
|
||||
bs.current_level = 0;
|
||||
bs.max_level = len;
|
||||
bs.locations = locations;
|
||||
|
||||
_Unwind_Backtrace (my_trace_fn, &bs);
|
||||
return bs.current_level;
|
||||
}
|
@ -1,282 +0,0 @@
|
||||
/* Header file for unwinding stack frames for exception handling. */
|
||||
/* Compile this one with gcc. */
|
||||
/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
|
||||
Contributed by Jason Merrill <jason@cygnus.com>.
|
||||
|
||||
This file is part of GNU CC.
|
||||
|
||||
GNU CC is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU CC is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU CC; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
||||
Boston, MA 02110-1301, USA. */
|
||||
|
||||
|
||||
/* Number of hardware registers known to the compiler.
|
||||
We have 128 general registers, 128 floating point registers, 64 predicate
|
||||
registers, 8 branch registers, and one frame pointer register. */
|
||||
|
||||
/* ??? Should add ar.lc, ar.ec and probably also ar.pfs. */
|
||||
|
||||
#define FIRST_PSEUDO_REGISTER 330
|
||||
|
||||
#ifndef DWARF_FRAME_REGISTERS
|
||||
#define DWARF_FRAME_REGISTERS FIRST_PSEUDO_REGISTER
|
||||
#endif
|
||||
|
||||
typedef struct frame_state
|
||||
{
|
||||
void *cfa;
|
||||
void *eh_ptr;
|
||||
long cfa_offset;
|
||||
long args_size;
|
||||
long reg_or_offset[DWARF_FRAME_REGISTERS+1];
|
||||
unsigned short cfa_reg;
|
||||
unsigned short retaddr_column;
|
||||
char saved[DWARF_FRAME_REGISTERS+1];
|
||||
} frame_state;
|
||||
|
||||
/* Values for 'saved' above. */
|
||||
#define REG_UNSAVED 0
|
||||
#define REG_SAVED_OFFSET 1
|
||||
#define REG_SAVED_REG 2
|
||||
|
||||
/* The representation for an "object" to be searched for frame unwind info.
|
||||
For targets with named sections, one object is an executable or shared
|
||||
library; for other targets, one object is one translation unit.
|
||||
|
||||
A copy of this structure declaration is printed by collect2.c;
|
||||
keep the copies synchronized! */
|
||||
|
||||
struct object {
|
||||
#ifdef IA64_UNWIND_INFO
|
||||
void *pc_base; /* This field will be set by __do_frame_setup. */
|
||||
#endif
|
||||
void *pc_begin;
|
||||
void *pc_end;
|
||||
struct dwarf_fde *fde_begin;
|
||||
struct dwarf_fde **fde_array;
|
||||
size_t count;
|
||||
struct object *next;
|
||||
};
|
||||
|
||||
/* Called from __throw to find the registers to restore for a given
|
||||
PC_TARGET. The caller should allocate a local variable of `struct
|
||||
frame_state' (declared in frame.h) and pass its address to STATE_IN.
|
||||
Returns NULL on failure, otherwise returns STATE_IN. */
|
||||
|
||||
extern struct frame_state *__frame_state_for (void *, struct frame_state *);
|
||||
|
||||
#ifdef IA64_UNWIND_INFO
|
||||
|
||||
/* This is the information required for unwind records in an ia64
|
||||
object file. This is required by GAS and the compiler runtime. */
|
||||
|
||||
/* These are the starting point masks for the various types of
|
||||
unwind records. To create a record of type R3 for instance, one
|
||||
starts by using the value UNW_R3 and or-ing in any other required values.
|
||||
These values are also unique (in context), so they can be used to identify
|
||||
the various record types as well. UNW_Bx and some UNW_Px do have the
|
||||
same value, but Px can only occur in a prologue context, and Bx in
|
||||
a body context. */
|
||||
|
||||
#define UNW_R1 0x00
|
||||
#define UNW_R2 0x40
|
||||
#define UNW_R3 0x60
|
||||
#define UNW_P1 0x80
|
||||
#define UNW_P2 0xA0
|
||||
#define UNW_P3 0xB0
|
||||
#define UNW_P4 0xB8
|
||||
#define UNW_P5 0xB9
|
||||
#define UNW_P6 0xC0
|
||||
#define UNW_P7 0xE0
|
||||
#define UNW_P8 0xF0
|
||||
#define UNW_P9 0xF1
|
||||
#define UNW_P10 0xFF
|
||||
#define UNW_X1 0xF9
|
||||
#define UNW_X2 0xFA
|
||||
#define UNW_X3 0xFB
|
||||
#define UNW_X4 0xFC
|
||||
#define UNW_B1 0x80
|
||||
#define UNW_B2 0xC0
|
||||
#define UNW_B3 0xE0
|
||||
#define UNW_B4 0xF0
|
||||
|
||||
/* These are all the various types of unwind records. */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
prologue, prologue_gr, body, mem_stack_f, mem_stack_v, psp_gr, psp_sprel,
|
||||
rp_when, rp_gr, rp_br, rp_psprel, rp_sprel, pfs_when, pfs_gr, pfs_psprel,
|
||||
pfs_sprel, preds_when, preds_gr, preds_psprel, preds_sprel,
|
||||
fr_mem, frgr_mem, gr_gr, gr_mem, br_mem, br_gr, spill_base, spill_mask,
|
||||
unat_when, unat_gr, unat_psprel, unat_sprel, lc_when, lc_gr, lc_psprel,
|
||||
lc_sprel, fpsr_when, fpsr_gr, fpsr_psprel, fpsr_sprel,
|
||||
priunat_when_gr, priunat_when_mem, priunat_gr, priunat_psprel,
|
||||
priunat_sprel, bsp_when, bsp_gr, bsp_psprel, bsp_sprel, bspstore_when,
|
||||
bspstore_gr, bspstore_psprel, bspstore_sprel, rnat_when, rnat_gr,
|
||||
rnat_psprel, rnat_sprel, epilogue, label_state, copy_state,
|
||||
spill_psprel, spill_sprel, spill_reg, spill_psprel_p, spill_sprel_p,
|
||||
spill_reg_p
|
||||
} unw_record_type;
|
||||
|
||||
|
||||
/* These structures declare the fields that can be used in each of the
|
||||
4 record formats, R, P, B and X. */
|
||||
|
||||
typedef struct unw_r_record
|
||||
{
|
||||
unsigned long rlen;
|
||||
unsigned short mask;
|
||||
unsigned short grsave;
|
||||
} unw_r_record;
|
||||
|
||||
typedef struct unw_p_record
|
||||
{
|
||||
void *imask;
|
||||
unsigned long t;
|
||||
unsigned long size;
|
||||
unsigned long spoff;
|
||||
unsigned long br;
|
||||
unsigned long pspoff;
|
||||
unsigned short gr;
|
||||
unsigned short rmask;
|
||||
unsigned short grmask;
|
||||
unsigned long frmask;
|
||||
unsigned short brmask;
|
||||
} unw_p_record;
|
||||
|
||||
typedef struct unw_b_record
|
||||
{
|
||||
unsigned long t;
|
||||
unsigned long label;
|
||||
unsigned short ecount;
|
||||
} unw_b_record;
|
||||
|
||||
typedef struct unw_x_record
|
||||
{
|
||||
unsigned long t;
|
||||
unsigned long spoff;
|
||||
unsigned long pspoff;
|
||||
unsigned short reg;
|
||||
unsigned short treg;
|
||||
unsigned short qp;
|
||||
unsigned short xy; /* Value of the XY field.. */
|
||||
} unw_x_record;
|
||||
|
||||
/* This structure is used to determine the specific record type and
|
||||
its fields. */
|
||||
typedef struct unwind_record
|
||||
{
|
||||
unw_record_type type;
|
||||
union {
|
||||
unw_r_record r;
|
||||
unw_p_record p;
|
||||
unw_b_record b;
|
||||
unw_x_record x;
|
||||
} record;
|
||||
} unwind_record;
|
||||
|
||||
/* This structure represents the start of an unwind information pointer.
|
||||
'unwind_descriptors' is the beginninng of the unwind descriptors, which
|
||||
use up 'length' bytes of storage. */
|
||||
|
||||
typedef struct unwind_info_ptr
|
||||
{
|
||||
unsigned short version;
|
||||
unsigned short flags;
|
||||
unsigned int length;
|
||||
unsigned char unwind_descriptors[1];
|
||||
} unwind_info_ptr;
|
||||
|
||||
|
||||
#define IA64_UNW_LOC_TYPE_NONE 0
|
||||
#define IA64_UNW_LOC_TYPE_MEM 1
|
||||
#define IA64_UNW_LOC_TYPE_GR 2
|
||||
#define IA64_UNW_LOC_TYPE_FR 3
|
||||
#define IA64_UNW_LOC_TYPE_BR 4
|
||||
#define IA64_UNW_LOC_TYPE_SPOFF 5
|
||||
#define IA64_UNW_LOC_TYPE_PSPOFF 6
|
||||
#define IA64_UNW_LOC_TYPE_OFFSET 7
|
||||
#define IA64_UNW_LOC_TYPE_SPILLBASE 8
|
||||
|
||||
typedef struct ia64_reg_loc
|
||||
{
|
||||
long when; /* PC relative offset from start of function. */
|
||||
union { /* In memory or another register? */
|
||||
void *mem;
|
||||
int regno;
|
||||
int offset;
|
||||
} l;
|
||||
short loc_type; /* Where to find value. */
|
||||
short reg_size;
|
||||
} ia64_reg_loc;
|
||||
|
||||
/* Frame information record. */
|
||||
|
||||
typedef struct ia64_frame_state
|
||||
{
|
||||
ia64_reg_loc gr[4]; /* gr4 to gr7. */
|
||||
ia64_reg_loc fr[20]; /* fr2 to fr5, fr16 to fr31. */
|
||||
ia64_reg_loc br[5]; /* br1 to br5. */
|
||||
ia64_reg_loc rp;
|
||||
ia64_reg_loc fpsr;
|
||||
ia64_reg_loc bsp;
|
||||
ia64_reg_loc bspstore;
|
||||
ia64_reg_loc rnat;
|
||||
ia64_reg_loc pfs;
|
||||
ia64_reg_loc unat;
|
||||
ia64_reg_loc lc;
|
||||
ia64_reg_loc pr;
|
||||
ia64_reg_loc priunat;
|
||||
ia64_reg_loc sp;
|
||||
ia64_reg_loc psp;
|
||||
ia64_reg_loc spill_base;
|
||||
void *my_sp;
|
||||
void *my_bsp;
|
||||
} ia64_frame_state;
|
||||
|
||||
|
||||
extern unwind_info_ptr *build_ia64_frame_state (unsigned char *, ia64_frame_state *,
|
||||
void *, void *);
|
||||
extern void *get_real_reg_value (ia64_reg_loc *);
|
||||
extern void *get_personality (unwind_info_ptr *);
|
||||
extern void *get_except_table (unwind_info_ptr *);
|
||||
extern void set_real_reg_value (ia64_reg_loc *, void *);
|
||||
void *calc_caller_bsp (long, unsigned char *);
|
||||
|
||||
#endif /* IA64_UNWIND_INFO */
|
||||
|
||||
/* Note the following routines are exported interfaces from libgcc; do not
|
||||
change these interfaces. Instead create new interfaces. Also note
|
||||
references to these functions may be made weak in files where they
|
||||
are referenced. */
|
||||
|
||||
extern void __register_frame (void * );
|
||||
extern void __register_frame_table (void *);
|
||||
extern void __deregister_frame (void *);
|
||||
|
||||
/* Called either from crtbegin.o or a static constructor to register the
|
||||
unwind info for an object or translation unit, respectively. */
|
||||
|
||||
extern void __register_frame_info (void *, struct object *);
|
||||
|
||||
/* Similar, but BEGIN is actually a pointer to a table of unwind entries
|
||||
for different translation units. Called from the file generated by
|
||||
collect2. */
|
||||
extern void __register_frame_info_table (void *, struct object *);
|
||||
|
||||
/* Called from crtend.o to deregister the unwind info for an object. */
|
||||
|
||||
extern void *__deregister_frame_info (void *);
|
||||
|
||||
|
@ -1,81 +0,0 @@
|
||||
/* Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
||||
2000 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU CC.
|
||||
|
||||
GNU CC is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU CC is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU CC; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
||||
Boston, MA 02110-1301, USA. */
|
||||
|
||||
/* As a special exception, if you link this library with other files,
|
||||
some of which are compiled with GCC, to produce an executable,
|
||||
this library does not by itself cause the resulting executable
|
||||
to be covered by the GNU General Public License.
|
||||
This exception does not however invalidate any other reasons why
|
||||
the executable file might be covered by the GNU General Public License. */
|
||||
|
||||
#include <stddef.h>
|
||||
#include <memory.h>
|
||||
|
||||
#define IA64_UNWIND_INFO
|
||||
#include "ia64-frame.h"
|
||||
|
||||
static int
|
||||
ia64_backtrace_helper (void **array, void *throw_pc,
|
||||
ia64_frame_state *throw_frame,
|
||||
ia64_frame_state *frame, void *bsp, int size)
|
||||
{
|
||||
void *pc = NULL;
|
||||
int frame_count = 0;
|
||||
unwind_info_ptr *info;
|
||||
|
||||
asm volatile ("flushrs"); /* Make the local register stacks available. */
|
||||
|
||||
/* Start at our stack frame, get our state. */
|
||||
info = build_ia64_frame_state (throw_pc, throw_frame, bsp, NULL);
|
||||
|
||||
memcpy (frame, throw_frame, sizeof (*frame));
|
||||
|
||||
while (info && frame_count < size)
|
||||
{
|
||||
pc = array[frame_count++] = get_real_reg_value (&frame->rp);
|
||||
--pc;
|
||||
bsp = calc_caller_bsp
|
||||
((long)get_real_reg_value (&frame->pfs), frame->my_bsp);
|
||||
info = build_ia64_frame_state (pc, frame, bsp, NULL);
|
||||
if (frame->rp.loc_type == IA64_UNW_LOC_TYPE_NONE) /* We've finished. */
|
||||
break;
|
||||
}
|
||||
|
||||
return frame_count;
|
||||
}
|
||||
|
||||
int
|
||||
_Jv_ia64_backtrace (void **array, int size)
|
||||
{
|
||||
ia64_frame_state my_frame;
|
||||
ia64_frame_state originator; /* For the context handler is in. */
|
||||
void *bsp;
|
||||
|
||||
/* Do any necessary initialization to access arbitrary stack frames.
|
||||
This forces gcc to save memory in our stack frame for saved
|
||||
registers. */
|
||||
__builtin_unwind_init ();
|
||||
|
||||
label_ia64:
|
||||
bsp = __builtin_ia64_bsp ();
|
||||
|
||||
return ia64_backtrace_helper (array, &&label_ia64, &my_frame,
|
||||
&originator, bsp, size);
|
||||
}
|
@ -176,8 +176,6 @@ RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
SUPPLY_BACKTRACE_FALSE = @SUPPLY_BACKTRACE_FALSE@
|
||||
SUPPLY_BACKTRACE_TRUE = @SUPPLY_BACKTRACE_TRUE@
|
||||
SYSDEP_SOURCES = @SYSDEP_SOURCES@
|
||||
SYSTEMSPEC = @SYSTEMSPEC@
|
||||
SYS_ZLIBS = @SYS_ZLIBS@
|
||||
|
Loading…
Reference in New Issue
Block a user