public inbox for java-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Andrew Haley <aph@redhat.com>
To: java-patches@gcc.gnu.org
Subject: Re: [PATCH,final respin] [4.5 regression] Fix PR42811: java.lang.ExceptionInInitializerError   in ecj1 and associated issues.
Date: Sat, 20 Mar 2010 18:17:00 -0000	[thread overview]
Message-ID: <4BA51142.7010504@redhat.com> (raw)
In-Reply-To: <4BA4DFDD.2050802@gmail.com>

On 03/20/2010 02:46 PM, Dave Korn wrote:
>> On 02/20/2010 06:36 PM, Dave Korn wrote:
> 
>>>   Bootstrapped and tested on i686-pc-cygwin; fixes PR42811 and doesn't cause
>>> any further regressions (there are some preexisting fails that this makes no
>>> difference to).  OK for head?
>>
>> A couple of things:
>>
>> 1.  Bounce the gc changes off gc@napali
> 
>   The GC changes have now been accepted upstream.  During porting them, I
> developed a testcase, which (by your kind permission) I will submit as a
> separate patch shortly after this round of patches is accepted and checked in.
> 
>> 2.  Is it really necessary to make the main program depend on a symbol
>>     in libgcj-noncore when BC compiling?  Can't you make the libgcj
>>     itself depend on libgcj-noncore?
> 
>   It turns out that I can, and I can do it without having to hack libtool or
> do anything else unsuitable (IMO) for stage 3.  Bootstrapped, and test results
> posted(*), no regressions.
> 
> pr42811-final.diff
> libjava/ChangeLog:
> 
> 	* libjava/configure.ac (DLLTOOL): Call AC_CHECK_TOOL.
> 	(libgcj_sublib_core_extra_deps): New host-dependent configure var.
> 	(LIBGCJ_SUBLIB_CORE_EXTRA_DEPS): AC_SUBST it.
> 	* libjava/configure.host (libgcj_sublib_core_extra_deps): Define
> 	appropriately on Cygwin and MinGW.
> 	(libgcj_sublib_core_extra_deps): Add libgcj-noncore-dummy import
> 	stub library on Cygwin and MinGW.
> 	* libjava/Makefile.am (LIBJAVA_CORE_EXTRA): Import AC_SUBST'd
> 	LIBGCJ_SUBLIB_CORE_EXTRA_DEPS if building sublibs, else define empty.
> 	(libgcj_la_DEPENDENCIES): Use it.
> 	(DLL_VERSION): New makefile macro.
> 	(libgcj-noncore-dummy.dll.a): New build rule for dummy import stub
> 	library.
> 	(libgcj_noncore_la_LIBADD): Trim superfluous convenience libs.
> 	(AM_MAKEFLAGS): Add DLLTOOL recursive propagation.
> 	* libjava/libgcj-noncore-dummy.def: New file.
> 	* libjava/Makefile.in: Regenerate.
> 	* libjava/include/Makefile.in: Likewise.
> 	* libjava/testsuite/Makefile.in: Likewise.
> 	* libjava/configure: Likewise.
> 	* libjava/gcj/Makefile.in: Likewise.
> 
> pr42811-uninit-mem-fix.diff:
> libjava/ChangeLog:
> 
> 	* jvmti.cc (_Jv_GetJVMTIEnv): Avoid use of uninitialised memory.
> 
> pr42811-boehm-gc-fixes.diff:
> boehm-gc/ChangeLog:
> 
> 	* include/private/gc_priv.h (struct roots) [CYGWIN32]: Don't
> 	declare r_next member on Cygwin as on other windows hosts.
> 	(LOG_RT_SIZE) [CYGWIN32]: Don't define likewise.
> 	(RT_SIZE) [CYGWIN32]: Likewise.
> 	(struct _GC_arrays) [CYGWIN32]: Do declare _heap_bases[] member
> 	likewise.
> 	(GC_heap_bases) [CYGWIN32]: Do define likewise.
> 	(struct _SYSTEM_INFO) [CYGWIN32]: Do forward-declare likewise.
> 	(GC_sysinfo) [CYGWIN32]: Do declare extern likewise.
> 	(GC_n_heap_bases) [CYGWIN32]: Likewise.
> 	(GC_is_tmp_root) [CYGWIN32]: Do prototype likewise.
> 	* include/private/gcconfig.h (GC_win32_get_mem) [CYGWIN32]: Likewise.
> 	(GET_MEM) [CYGWIN32]: Do define likewise.
> 	* boehm-gc/ptr_chck.c (GC_is_visible) [CYGWIN32]: Do handle dynamic
> 	registration likewise.
> 	* boehm-gc/os_dep.c (GC_setpagesize) [CYGWIN32]: Do define likewise.
> 	(GC_no_win32_dlls) [CYGWIN32]: Define as constant false, unlike
> 	other windows hosts.
> 	(GC_sysinfo) [CYGWIN32]: Define as on other windows hosts.
> 	(GC_n_heap_bases) [CYGWIN32]: Likewise.
> 	(GLOBAL_ALLOC_TEST) [CYGWIN32]: Likewise.
> 	(GC_win32_get_mem) [CYGWIN32]: Likewise, but wrapping GC_unix_get_mem
> 	rather than GlobalAlloc/VirtualAlloc.
> 	(GC_win32_free_heap) [CYGWIN32]: Likewise, but wrapping free instead
> 	of GlobalFree (even though the function body is optimised away).
> 	* boehm-gc/mark_rts.c (add_roots_to_index) [CYGWIN32]: Define as on
> 	other windows hosts.
> 	(GC_add_roots_inner) [CYGWIN32]: Avoid overlapping or adjacent
> 	intervals likewise.
> 	(GC_clear_roots) [CYGWIN32]: Clear GC_root_index[] likewise.
> 	(GC_rebuild_root_index) [CYGWIN32]: Define as on other windows hosts.
> 	(GC_remove_tmp_roots) [CYGWIN32]: Call it likewise.
> 	(GC_remove_roots) [CYGWIN32]: Don't define, as on other windows hosts.
> 	(GC_is_tmp_root) [CYGWIN32]: Define, as on other windows hosts.
> 	(GC_cond_register_dynamic_libraries) [CYGWIN32]: Handle temporary
> 	roots and dynamic registration likewise.
> 	* boehm-gc/dyn_load.c (GC_has_static_roots) [CYGWIN32]: Define as on
> 	other windows hosts.
> 	(GC_register_has_static_roots_callback) [CYGWIN32]: Likewise.
> 	(GC_cond_add_roots) [CYGWIN32]: Likewise.
> 	(GC_register_main_static_data) [CYGWIN32]: Define to always return
> 	false, as on MSWINCE
> 	(HAVE_REGISTER_MAIN_STATIC_DATA) [CYGWIN32]: Define as on other
> 	windows hosts.
> 	(GC_warn_fb) [CYGWIN32]: Likewise.
> 	(GC_disallow_ignore_fb) [CYGWIN32]: Likewise.
> 	(GC_ignore_fb_mb) [CYGWIN32]: Likewise.
> 	(GC_ignore_fb) [CYGWIN32]: Likewise.
> 	(is_frame_buffer) [CYGWIN32]: Likewise.
> 	(GC_dump_meminfo) [CYGWIN32]: Likewise.
> 	(GC_wnt) [CYGWIN32]: Define to constant true.
> 	(GC_register_dynamic_libraries) [CYGWIN32]: Define as on other
> 	windows hosts.
> 
>   OK for HEAD?

OK, thanks.

Andrew.

      reply	other threads:[~2010-03-20 18:17 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-20 18:18 [PATCH] " Dave Korn
2010-02-22 10:12 ` Andrew Haley
2010-02-22 16:49   ` Dave Korn
2010-03-19 15:55     ` Dave Korn
2010-03-20 14:29   ` [PATCH,final respin] " Dave Korn
2010-03-20 18:17     ` Andrew Haley [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4BA51142.7010504@redhat.com \
    --to=aph@redhat.com \
    --cc=java-patches@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).