This is the mail archive of the 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]: Speed up SSA-CCP

On Sat, 2004-05-22 at 09:06, Daniel Berlin wrote:
> This speeds up SSA-CCP by moving more things to VARYING in one step 
> instead of two.
> Kenneth Zadeck said it was worth about 30-40% performance in their 
> compiler.
> SSA-CCP is already fast in our compiler, but it can't hurt to make it 
> faster (this patch can't ever slow it down, since it can only lessen 
> the number of iterations it takes to finish the algorithm, not increase 
> it).
> 2004-05-22  Daniel Berlin  <>
>        Kenneth Zadeck <>
>     * tree-ssa-ccp.c (varying_ssa_edges): New worklist.
>     (add_var_to_ssa_edges_worklist): Add value argument.
>     Update callers.
>     Use new worklist.
>     (tree_ssa_ccp): Use new worklist.
It looks good.  Some questions before adding it:

     1. Please factor out the loop that goes through the edge lists, so
        that the main iteration loop in tree_ssa_ccp() calls
        process_edge_list (ssa_edges) and process_edge_list
     2. Is Kenneth's copyright assignment already on file?
     3. Could you add a small example that illustrates how the new list
        speeds up the demotion to VARYING?
     4. Any timings worth mentioning?

Thanks.  Diego.

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