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][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.
>
>

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