This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Patches ping
On Fri, May 06, 2005 at 11:09:33PM +0200, Zdenek Dvorak wrote:
> * tree-ssa-loop-im.c: Include hashtab.h.
> (struct mem_ref_loc): New.
> (struct mem_ref): Describe the set of references with the same
> shape.
> (max_stmt_uid, get_stmt_uid, record_mem_ref, free_mem_refs,
> maybe_queue_var, fem_single_reachable_address,
> for_each_memref, single_reachable_address,
> is_call_clobbered_ref, determine_lsm_reg): Removed.
> (record_mem_ref_loc, free_mem_ref_locs, determine_lsm_ref,
> hoist_memory_reference, memref_hash, memref_eq, memref_del,
> gather_mem_refs_stmt, gather_mem_refs, find_more_ref_vops):
> New functions.
> (rewrite_mem_refs, schedule_sm): Use mem_ref_loc list.
> (determine_lsm_loop): Rewritten.
> (determine_lsm): Do not set stmt uids.
>
This version is much easier to follow than the original. Thanks.
The patch is fine. A couple of minor comment fixes:
> +
> + /* If we cannot create a ssa name for the result, give up. */
^^^^^
an SSA
> + if (!is_gimple_reg_type (TREE_TYPE (*mem))
> + || TREE_THIS_VOLATILE (*mem))
> + goto fail;
> +
> + /* If we cannot move the reference from the loop, fail. */
^^^^
out of
Diego.