This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH, Darwin] Move fixed _Unwind_find_Enclosing_func to a crt.


On 08/15/2018 12:50 PM, Iain Sandoe wrote:
> Hi,
> 
> This is a pre-cursor to other tidy-ups aimed at being able to dispense with the “ext” library that we introduced (a loooong time ago) to deal with the differences between Darwin’s installed libgcc_s and the current compiler.
> 
> Since the installed version of _Unwind_find_Enclosing_func was broken, we built a small shim function to allow Java to work on Darwin10.
> 
> We have been carrying this around in the darwin-specific unwinder code ever since.
> 
> This patch splits the patch function out into a shim crt that is included only when needed (for x86 and ppc via Rosetta on Darwin10).
> 
> There is no need to treat Darwin12+ differently in this and that allows us to simplify the header there.
> 
> OK for trunk?
> Iain
> 
> 2018-08-15  Iain Sandoe <iain@sandoe.co.uk>
> 
> gcc/
> 	* config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Adjust to use the
> 	Darwin10-specific unwinder-shim.
> 	* config/darwin12.h (LINK_GCC_C_SEQUENCE_SPEC): Remove.
> 	* config/rs6000/darwin.h (DARWIN_CRT1_SPEC, DARWIN_DYLIB1_SPEC): 
> 	New to cater for Darwin10 Rosetta.
> 
> libgcc/
> 	* config/unwind-dw2-fde-darwin.c  (_darwin10_Unwind_FindEnclosingFunction):
> 	move from here ...
> 	* config/darwin10-unwind-find-enc-func.c: … to here.
> 	* config/t-darwin: Build Darwin10 unwinder shim crt.
> 	* libgcc/config.host: Add the Darwin10 unwinder shim.
Given you've probably got a better understanding of Darwin's needs than
anyone here, this seems quite reasonable.  OK for the trunk unless
someone objects in the next 24hrs.

jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]