On June 30, 2015 10:16:01 AM GMT+02:00, Ajit Kumar Agarwal <ajit.kumar.agar...@xilinx.com> wrote: >All: > >The below patch added a new path Splitting optimization pass on SSA >representation. The Path Splitting optimization >Pass moves the join block of if-then-else same as loop latch to its >predecessors and get merged with the predecessors >Preserving the SSA representation. > >The patch is tested for Microblaze and i386 target. The EEMBC/Mibench >benchmarks is run with the Microblaze target >And the performance gain of 9.15% and rgbcmy01_lite(EEMBC benchmarks). >The Deja GNU tests is run for Mircroblaze >Target and no regression is seen for Microblaze target and the new >testcase attached are passed. > >For i386 bootstrapping goes through fine and the Spec cpu2000 >benchmarks is run with this patch. Following observation >were seen with spec cpu2000 benchmarks. > >Ratio of path splitting change vs Ratio of not having path splitting >change is 3653.353 vs 3652.14 for INT benchmarks. >Ratio of path splitting change vs Ratio of not having path splitting >change is 4353.812 vs 4345.351 for FP benchmarks. > >Based on comments from RFC patch following changes were done. > >1. Added a new pass for path splitting changes. >2. Placed the new path Splitting Optimization pass before the copy >propagation pass. >3. The join block same as the Loop latch is wired into its predecessors >so that the CFG Cleanup pass will merge the blocks >Wired together. >4. Copy propagation routines added for path splitting changes is not >needed as suggested by Jeff. They are removed in the patch as >The copy propagation in the copied join blocks will be done by the >existing copy propagation pass and the update ssa pass. >5. Only the propagation of phi results of the join block with the phi >argument is done which will not be done by the existing update_ssa >Or copy propagation pass on tree ssa representation. >6. Added 2 tests. > a) compilation check tests. > b) execution tests.
The 2 tests seem to be identical, so why do you have both? Also, please remove cleanup-tree-dump, this is now done automatically. Thanks, >7. Refactoring of the code for the feasibility check and finding the >join block same as loop latch node.