This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: IA64 HP-UX Unwind patch
- From: Richard Henderson <rth at redhat dot com>
- To: Steve Ellcey <sje at cup dot hp dot com>
- Cc: gcc-patches at gcc dot gnu dot org, libstdc++ at gcc dot gnu dot org
- Date: Wed, 14 Aug 2002 14:29:04 -0700
- Subject: Re: IA64 HP-UX Unwind patch
- References: <200208142034.NAA15601@hpsje.cup.hp.com>
On Wed, Aug 14, 2002 at 01:34:50PM -0700, Steve Ellcey wrote:
> I do keep forgetting about libjava but I just looked and I don't see a
> use of _URC_FOREIGN_EXCEPTION in it anywhere so I don't think I have to
> change anything there for the _URC_NO_REASON problem. The _Unwind_SetIP
> part may require libjava work.
Oh, right, cause there's no exception object destructor for Java.
> #if defined(__ia64__) && defined(__hpux__)
> typedef unsigned _Unwind_Ptr __attribute__((__mode__(__word__)));
> #else
> typedef unsigned _Unwind_Ptr __attribute__((__mode__(__pointer__)));
> #endif
>
> The other changes that would be needed to make this work would be to
> modify catchTemp in the __cxa_exception in cxx-unwind.h to be
> _Unwind_Ptr instead of void* and get rid of the void* casts when
> assigning to catchTemp. Does this look like a better approach?
Dunno. Probably better, but I'm not sure how many warnings you'll
get for casting between pointer and integer of different size.
r~