This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH: PR other/48007: Unwind library doesn't work with UNITS_PER_WORD > sizeof (void *)
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Ulrich Weigand <uweigand at de dot ibm dot com>
- Cc: Ian Lance Taylor <iant at google dot com>, "H.J. Lu" <hjl dot tools at gmail dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 22 Mar 2011 16:41:21 +0100
- Subject: Re: PATCH: PR other/48007: Unwind library doesn't work with UNITS_PER_WORD > sizeof (void *)
- References: <mcr7hbrvf5r.fsf@google.com> <201103221519.p2MFJkVV022133@d06av02.portsmouth.uk.ibm.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Tue, Mar 22, 2011 at 04:19:46PM +0100, Ulrich Weigand wrote:
> Ian Lance Taylor wrote:
> > "H.J. Lu" <hjl.tools@gmail.com> writes:
> >
> > > Here is the updated patch. It has
> >
> > This patch is OK if it bootstraps and passes tests.
>
> I thought the _Unwind_Context structure was part of the libgcc ABI
> and should only be changed by appending to the end and/or updating
> the version field?
It is, so a change like this should be guarded by some preprocessor
conditionals if it makes any difference on any target (not sure if
we have any targets where a union containing void * and uintptr_t
would be layed out differently in a structure from void *, but
certainly on targets where _Unwind_Word is larger than void *
and they aren't new targets we risk ABI issues).
The problem is when some binaries link against older libgcc.a
and are used together with dynamically linked libgcc_s.so.
Jakub