This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ 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: [arm] Use EABI unwind library


On Thursday 23 September 2004 21:37, Richard Henderson wrote:
> On Thu, Sep 23, 2004 at 01:20:40PM +0100, Paul Brook wrote:
> > Because __cxa_call_unexpected (as defined by the EABI) requires the
> > function exception specification as an array of pointers[1] to type_into
> > objects.
>
> I'm thinking less and less of this ARM EABI.  Take an existing ABI and
> make all sorts of arbitrary changes to it.  Someone should be smacked.
>
> Can you work around this by fiddling with ASM_PREFERRED_EH_DATA_FORMAT,
> such that you don't need changes to generic code?

No.
I guess we could play tricks with A_P_E_D_F and 
ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX to eliminate the arm_out.ttype hook.

However the trickier problem is targetm.eh_fnspec_ttable_indirect. The eabi 
can't cope with the extra level of indirection used in the function exception 
specification lists.

Ideally what we'd is use the arm defined personality routines and lsda format. 
However that's totally different, and has different ideas about how exception 
regions are arranged. It seemed easier/less error prone to butcher what we 
already had.

> As for the rest, I think adding 15 different hooks just to satisfy one
> new ABI is dumb. ?We might as well admit it and just test is_arm_eabi
> all over the place instead.[1]

Possibly.

Paul


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