This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFA] Fix bit/byte unit thinko in is_aliasing_offset
- From: Geoff Keating <geoffk at geoffk dot org>
- To: Olivier Hainque <hainque at act-europe dot fr>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: 07 Oct 2003 12:18:18 -0700
- Subject: Re: [RFA] Fix bit/byte unit thinko in is_aliasing_offset
- References: <20031007102043.A25864@rome.int.act-europe.fr>
Olivier Hainque <hainque@act-europe.fr> writes:
> Hello,
>
> At least for Ada, some special circuitry is available to deal with local or
> dynamically allocated objects more-than-maximally aligned, that is, the
> alignment of which is requested to be greater than BIGGEST_ALIGNMENT.
>
> A number of issues are making the whole Ada scheme severely broken as of
> today, as demonstrated on e.g. x86-linux by the testcase provided below.
>
> The patch included here fixes a simple bit/byte unit thinko in
> is_aligning_offset, which is part of what's necessary to fix the general
> issue.
>
> It bootstraps and passes regression tests fine on i686-pc-linux-gnu, and has
> also been tested with another set of patches on sparc-sun-solaris2.8.
>
> The Ada testcase follows.
>
> Olivier
This is OK, assuming you can add the Ada testcase into the FSF GCC
testsuite; otherwise, please try to find a C testcase.
> 2003-10-07 Olivier Hainque <hainque@act-europe.fr>
>
> * expr.c (is_aligning_offset): Check if we are aligning the
> expressions's address over BIGGEST_ALIGNMENT in bytes, not
> in bits.
--
- Geoffrey Keating <geoffk@geoffk.org>