On Mon, 8 Feb 2016, Eric Botcazou wrote:
> > Yes, that place I just fixed. I mean for the SRA case.
>
> Are you sure that there is one?
No, but if there is none left why would you want to "fix" SRA?
Richard.
> expr = build_ref_for_model (loc, agg, access->offset - top_offset,
> access, gsi, insert_after);
>
> if (write)
> {
> if (access->grp_partial_lhs)
> expr = force_gimple_operand_gsi (gsi, expr, true, NULL_TREE,
> !insert_after,
> insert_after ? GSI_NEW_STMT
> : GSI_SAME_STMT);
> stmt = gimple_build_assign (repl, expr);
>
>
> (gdb) p debug_tree(repl)
> <var_decl 0x7ffff6d37870 q$typ
> type <pointer_type 0x7ffff6ceac78
> type <record_type 0x7ffff6cea498 Tnode type_0 BLK
> size <integer_cst 0x7ffff6c43678 constant 0>
> unit size <integer_cst 0x7ffff6c43618 constant 0>
> align 8 symtab 0 alias set -1 canonical type 0x7ffff6cea3f0
> context <translation_unit_decl 0x7ffff6d2e0f0 D.1453>
> pointer_to_this <pointer_type 0x7ffff6ceac78> chain <type_decl
> 0x7ffff6c54a18 D.1410>>
> sizes-gimplified unsigned SI
> size <integer_cst 0x7ffff6c435e8 constant 32>
> unit size <integer_cst 0x7ffff6c43600 constant 4>
> align 32 symtab 0 alias set -1 canonical type 0x7ffff6cead20>
> used unsigned SI file pr68273.c line 67 col 10 size <integer_cst
> 0x7ffff6c435e8 32> unit size <integer_cst 0x7ffff6c43600 4>
> align 32 context <function_decl 0x7ffff6d0e700 op>>
>
>
> (gdb) p debug_tree(expr)
> <mem_ref 0x7ffff6d31a78
> type <pointer_type 0x7ffff6d335e8
> type <record_type 0x7ffff6cea498 Tnode type_0 BLK
> size <integer_cst 0x7ffff6c43678 constant 0>
> unit size <integer_cst 0x7ffff6c43618 constant 0>
> align 8 symtab 0 alias set -1 canonical type 0x7ffff6cea3f0
> context <translation_unit_decl 0x7ffff6d2e0f0 D.1453>
> pointer_to_this <pointer_type 0x7ffff6ceac78> chain <type_decl
> 0x7ffff6c54a18 D.1410>>
> sizes-gimplified unsigned SI
> size <integer_cst 0x7ffff6c435e8 constant 32>
> unit size <integer_cst 0x7ffff6c43600 constant 4>
> align 64 symtab 0 alias set -1 canonical type 0x7ffff6cead20>
>
> arg 0 <addr_expr 0x7ffff6d1d8a0
> type <pointer_type 0x7ffff6d33348 type <record_type 0x7ffff6ceadc8
> Node>
> unsigned SI size <integer_cst 0x7ffff6c435e8 32> unit size
> <integer_cst 0x7ffff6c43600 4>
> align 32 symtab 0 alias set -1 canonical type 0x7ffff6d333f0>
>
> arg 0 <parm_decl 0x7ffff6d2d300 q type <record_type 0x7ffff6ceadc8
> Node>
> used BLK file pr68273.c line 67 col 10
> size <integer_cst 0x7ffff6c43948 constant 128>
> unit size <integer_cst 0x7ffff6c43960 constant 16>
> align 64 context <function_decl 0x7ffff6d0e700 op> arg-type
> <record_type 0x7ffff6ceadc8 Node>>>
> arg 1 <integer_cst 0x7ffff6d1c4f8 type <pointer_type 0x7ffff6d333f0>
> constant 0>>
>
>
--
Richard Biener <[email protected]>
SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Graham Norton, HRB
21284 (AG Nuernberg)