diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-08-17 01:03:21 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-08-17 01:03:21 +0000 |
commit | 919df38169fae42392ee8e62910bb49e53e62932 (patch) | |
tree | 95b7d3068d6d990fedb42e0c637b55e97c1f98bd /gcc/java | |
parent | f98a9d6fc2fe2cdc5773a7a84aa1f0ea88912d73 (diff) | |
download | gcc-919df38169fae42392ee8e62910bb49e53e62932.tar.gz |
gcc/java/ChangeLog
* jvspec.c (lang_specific_driver): Add -s-bc-abi when needed.
libjava/ChangeLog
* configure, Makefile.in: Rebuilt.
* Makefile.am (toolexeclib_LTLIBRARIES): Add libgcj_bc.la.
(libgcj_bc_la_SOURCES): New variable.
(libgcj_bc_la_LDFLAGS): Likewise.
(libgcj_bc_la_LIBADD): Likewise.
(libgcj_bc_la_DEPENDENCIES): Likewise.
(libgcj_bc_la_LINK): Likewise.
(libgcj_bc_dummy_LINK): Likewise.
(libgcj_bc.la): New target.
(install-exec-hook): Likewise.
* libgcj.spec.in (*lib): Use LIBGCJ_SPEC.
* libgcj_bc.c: New file.
* configure.ac (LIBGCJ_SPEC): New subst.
* configure.host (use_libgcj_bc): New variable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@116204 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/java')
-rw-r--r-- | gcc/java/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/java/jvspec.c | 13 |
2 files changed, 18 insertions, 0 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index d1728f82b50..81970f5077f 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,8 @@ +2006-08-16 Jakub Jelinek <jakub@redhat.com> + Bryce McKinlay <bryce@mckinlay.net.nz> + + * jvspec.c (lang_specific_driver): Add -s-bc-abi when needed. + 2006-08-10 Simon Martin <simartin@users.sourceforge.net> PR java/8923 diff --git a/gcc/java/jvspec.c b/gcc/java/jvspec.c index 63f49ff74b3..f64d438807c 100644 --- a/gcc/java/jvspec.c +++ b/gcc/java/jvspec.c @@ -243,6 +243,9 @@ lang_specific_driver (int *in_argc, const char *const **in_argv, /* The argument we use to specify the spec file. */ char *spec_file = NULL; + /* If linking, nonzero if the BC-ABI is in use. */ + int link_for_bc_abi = 0; + argc = *in_argc; argv = *in_argv; added_libraries = *in_added_libraries; @@ -365,6 +368,11 @@ lang_specific_driver (int *in_argc, const char *const **in_argv, else if (strcmp (argv[i], "-static-libgcc") == 0 || strcmp (argv[i], "-static") == 0) shared_libgcc = 0; + else if (strcmp (argv[i], "-findirect-dispatch") == 0 + || strcmp (argv[i], "--indirect-dispatch") == 0) + { + link_for_bc_abi = 1; + } else /* Pass other options through. */ continue; @@ -490,6 +498,8 @@ lang_specific_driver (int *in_argc, const char *const **in_argv, num_args += shared_libgcc; + num_args += link_for_bc_abi; + arglist = XNEWVEC (const char *, num_args + 1); j = 0; @@ -599,6 +609,9 @@ lang_specific_driver (int *in_argc, const char *const **in_argv, if (shared_libgcc) arglist[j++] = "-shared-libgcc"; + if (link_for_bc_abi) + arglist[j++] = "-s-bc-abi"; + arglist[j] = NULL; *in_argc = j; |