[patch] Fix oddity in personality routine
Fri Dec 4 15:59:00 GMT 2009
On Fri, Dec 04, 2009 at 03:48:03PM +0000, Andrew Haley wrote:
> Jack Howarth wrote:
> > On Fri, Dec 04, 2009 at 02:59:43PM +0000, Andrew Haley wrote:
> >>> I suspect we may have a layered problem here and need
> >>> to work through each section. This weekend, I do some additional
> >>> builds to verify that the crash debugs to the same locations
> >>> in both darwin9 and darwin10 with and without the proposed
> >>> patch to pass -Wl,-allow_stack_execute on GCJLINK.
> >> Right.
> > Andrew,
> > Just to double check, you do agree that everything linked with
> > GCJLINK should be passed -Wl,-allow_stack_execute on darwin9/darwin10?
> I think so.
> > I am a bit confused by the criteria used to determine which java binaries
> > need the ld flag for -allow_stack_execute. If the a shared library contains
> > code that needs to execute on the stack
> No gcj library needs to execute on the stack, only the heap. I think the flag
> is misnamed.
> > (libgcj) shouldn't any executable
> > that links in that shared lib use the -allow_stack_execute ld flag?
> Yes, which is why I suggested you use SYSTEMSPEC. (Twice now, I think. :-)
> SYSTEMSPEC should pass that flag to everything liked with gcj.
I tried SYSTEMSPEC last night and it didn't eliminate the crashes in gcj. I'll double
check that tonight and specifically look for when libtool is using gcj to link to make
sure the -allow_stack_execute flag is invoked. If so, I'll make sure that the location of
the crash in gcj has shifted as it did when passing -Wl,-allow_stack_execute on GCJLINK.
ps Should I take this to mean that SYSTEMSPEC will cause gcj to automatically pass
-Wl,-allow_stack_execute when it links code? I assume I should be able to see that with
-v being pased to gcj. What confuses me is that gcj -v shows ejc1 being invoked. So
does ecj1 get the -Wl,-allow_stack_execute passed on from gcj or should it be invoking
-Wl,-allow_stack_execute on its own from SYSTEMSPEC?
More information about the Java