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] Fix ARRAY_RANGE_REF problems in ivopts


On Sat, Oct 11, 2008 at 8:35 PM, Eric Botcazou <ebotcazou@adacore.com> wrote:
> Hi,
>
> Jakub's recent patch aimed at improving alignment computations broke the Ada
> build on x86 because of a dangling SSA_NAME present in the TMR_ORIGINAL of a
> TARGET_MEM_REF that gets expanded by get_object_alignment.  It turns out that
> tree-ssa-loop-ivopts.c largely overlooks ARRAY_RANGE_REF, in particular in
> idx_remove_ssa_names.
>
> The attached patch adds the missing support as well as complete some comments.
>
> Tested on i586-suse-linux, OK for mainline?

Ok.  Did you manage to extract a testcase?

Thanks,
Richard.

>
> 2008-10-11  Eric Botcazou  <ebotcazou@adacore.com>
>
>        * tree.h (contains_packed_reference): Mention ARRAY_RANGE_REF in
>        head comment.
>        (array_ref_element_size): Likewise.
>        (array_ref_low_bound): Likewise.
>        (array_ref_up_bound): Likewise.
>        * expr.c (contains_packed_reference): Likewise.
>        (array_ref_element_size): Likewise.
>        (array_ref_low_bound): Likewise.
>        (array_ref_up_bound): Likewise.
>        * tree-ssa-loop-ivopts.c (idx_contains_abnormal_ssa_name_p): Deal
>        with ARRAY_RANGE_REF.
>        (idx_find_step): Likewise.
>        (idx_record_use): Likewise.
>        (strip_offset_1): Likewise.
>        (idx_remove_ssa_names): Likewise.
>
>
> --
> Eric Botcazou
>


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