On Mon, Mar 19, 2012 at 1:21 PM, Eric Botcazou <ebotca...@adacore.com> wrote:
> Hi,
>
> around line 380, we have in tree.def:
>
> /* References to storage.  */
>
> /* The ordering of the following codes is optimized for the classification
>   in handled_component_p.  Keep them in a consecutive group.  */
>
> The hitch is that VIEW_CONVERT_EXPR is far apart from the others, so the patch
> puts them together (and orders them consistently).  It also tweaks a couple of
> places where callers of get_inner_reference initializes unsignedp:
>
>            int unsignedp = 0, volatilep = 0;
>
>
>            decl = get_inner_reference (decl, &bitsize, &bitpos, &toffset,
>                                        &mode, &unsignedp, &volatilep, false);
>
> This is useless since unsignedp is always set (unlike volatilep).
>
> Tested on i586-suse-linux, OK for the mainline?

Ok.  I think volatilep should be always set as well.

Thanks,
Richard.

>
> 2012-03-19  Eric Botcazou  <ebotca...@adacore.com>
>
>        * tree.def (REALPART_EXPR, IMAGPART_EXPR, VIEW_CONVERT_EXPR): Move.
>        * tree.h (handled_component_p): Reorder cases.
>        * dwarf2out.c (loc_list_for_address_of_addr_expr_of_indirect_ref): Do
>        not initialize unsignedp.
>        (loc_list_from_tree): Likewise.
>        (fortran_common): Likewise.
>        * simplify-rtx.c (delegitimize_mem_from_attrs): Likewise.
>
>
> --
> Eric Botcazou

Reply via email to