- User Since
- Jun 8 2018, 5:19 AM (218 w, 1 d)
Sep 29 2020
Sep 25 2020
That said, I still am not convinced this is best implemented in a new pass. Isn't the idea here that we have the value of a branch condition available for a subset of the incoming paths? That sounds like it would compose well with other ways through which we can know the value of a conditional for a subset of the incoming paths w/o having multiple branches with the same condition:
Considering only the DCE's feature, I think the ADCE pass is close to this pass's purpose.
The big difference between this pass and others is that this pass duplicates the basic block to isolate the control flow.
This feature can promote loop optimizations by isolating the control flow that does not enter loops out of the kernel part when there is a sequence of multiple loops in numerical applications.
However, this first version duplicates basic blocks only in the conservative case where the performance is definitely improved.
This pass needs to duplicate basic blocks more aggressively and selectively to facilitate loop optimizations.
I closed this revision as the following revision will reconstruct this anew.
I corrected the description in alphabetical order in InitializePasses.h.
Thank you very much for your advice.
Sep 22 2020
I'm sorry for the long suspension due to various changes in my working environment(my job description, email address, etc).
I implemented this as a new optimization pass, so I will upload it.
I'm thinking of getting a new Phabricator review number and linking it from this comment section.
Is this a reasonable procedure?
Dec 26 2019
I'm sorry to stagnate this for a very long time.
According to the reviewer's comments, I am preparing this as a new optimization pass as 'Control Dependent DCE'.
With enhancements and additional test programs, I will submit a new review request.
Dec 9 2019
Thank you very much for your quick review.
I don't have commit access.
Could you commit this patch?
Dec 6 2019
Feb 13 2019
I uploaded my patch with some fixes.
Thank you very much for your quick and detailed review.
Feb 8 2019
Jan 10 2019
I think that there is no particular problem in this part itself.
Jun 28 2018
No, at the moment there is nothing.
Since I think there was no objection to the extension of MachinePipeliner, I am currently creating a patch aimed for upstreaming.
Please review it.
Thank you very much.
Jun 11 2018
Thank you for your detailed comment.
Your points make sense to me.
Jun 10 2018
Remove irrelevant differences and fix the format.