This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][MIDDLE-END] Tuplification of matrix-reorg.c
Patch was updated and committed to build 138526.
-Doug
2008/8/1 Razya Ladelsky <RAZYA@il.ibm.com>:
> "Diego Novillo" <dnovillo@google.com> wrote on 01/08/2008 17:28:55:
>
>> On Tue, Jul 29, 2008 at 13:58, Doug Kwan (Ãö®¶) <dougkwan@google.com>
> wrote:
>>
>> > 2008-07-28 Doug Kwan <dougkwan@google.com>
>> >
>> > * gcc/matrix-reorg.c (File): Re-enable all code.
>> > (struct malloc_call_data): Change CALL_STMT to gimple type.
>> > (collect_data_for_malloc_call): Tuplify.
>> > (struct access_site_info): Change STMT to gimple type.
>> > (struct matrix_info): Change MIN_INDIRECT_LEVEL_ESCAPE_STMT,
>> > and MALLOC_FOR_LEVEL to gimple and gimple pointer type.
>> > (struct free_info): Change STMT to gimple type.
>> > (struct matrix_access_phi_node): Change PHI to gimple type.
>> > (get_inner_of_cast_expr): Remove.
>> > (may_flatten_matrices_1): Tuplify.
>> > (may_flatten_matrices): Ditto.
>> > (mark_min_matrix_escape_level): Ditto.
>> > (ssa_accessed_in_tree): Refactor statement RHS related code
> into ...
>> > (ssa_accessed_in_call_rhs): New
>> > (ssa_accessed_in_assign_rhs): New
>> > (record_access_alloc_site_info): Tuplify.
>> > (add_allocation_site): Ditto.
>> > (analyze_matrix_allocation_site): Ditto.
>> > (analyze_transpose): Ditto.
>> > (get_index_from_offset): Ditto.
>> > (update_type_size): Ditto.
>> > (analyze_accesses_for_call_expr): Tuplify and renamed into ...
>> > (analyze_accesses_for_call_stmt): New. Also handle LHS of a
> call.
>> > (analyze_accesses_for_phi_node): Tuplify.
>> > (analyze_accesses_for_modify_stmt): Tuplify and renamed into
> ...
>> > (analyze_accesses_for_assign_stmt): Remove code for
>> handling call LHS.
>> > (analyze_matrix_accesses): Tuplify.
>> > (check_var_data): New call-back type for
> check_var_notmodified_p.
>> > (check_var_notmodified_p): Tuplify and use call-back struct to
>> > return statement found.
>> > (can_calculate_expr_before_stmt): Factor out statement related
> code
>> > into ...
>> > (can_calculate_stmt_before_stmt): New.
>> > (check_allocation_function): Tuplify.
>> > (find_sites_in_func): Ditto.
>> > (record_all_accesses_in_func): Ditto.
>> > (transform_access_sites): Ditto.
>> > (transform_allocation_sites): Ditto.
>> > (matrix_reorg): Re-enable.
>> > (gate_matrix_reorg): Re-enable.
>>
>> It looks OK. When I worked on it briefly, the only stumbling
>> block had been the walk_tree callback that needs the additional
>> structure to return a gimple statement and the removal of
>> get_inner_of_cast_expr. The rest was fairly mechanical.
>>
>> Only a couple of formatting nits.
>>
>> > +
>> > +static void
>> > +ssa_accessed_in_assign_rhs (gimple stmt, struct ssa_acc_in_tree *a)
>> > +{
>>
>> Needs comment.
>>
>> > +/* Go backwards in the use-def chains and find out the expression
>> > + represented by the possible SSA name in EXPR, until it is composed
>> > + of only VAR_DECL, PARM_DECL and INT_CST. In case of phi nodes
>> > + we make sure that all the arguments represent the same
> subexpression,
>> > + otherwise we fail. */
>> > +static tree
>>
>> Blank line after comment.
>>
>> If Razya has other issues to address, we can do it once the patch
>> is committed.
>
> That's fine with me.
> Razya
>
>> For now, I'd rather get those failures fixed.
>>
>>
>> Thanks. Diego.
>
>