Page MenuHomePhabricator
Feed Advanced Search

Oct 24 2016

david2050 added a comment to D24918: [ADCE] Add code to remove dead branches.

ping

Oct 24 2016, 7:29 AM

Oct 6 2016

david2050 updated the diff for D24918: [ADCE] Add code to remove dead branches.

rebase and update to new df_iterator interface

Oct 6 2016, 10:32 AM

Oct 5 2016

david2050 committed rL283391: Modify df_iterator to support post-order actions.
Modify df_iterator to support post-order actions
Oct 5 2016, 2:45 PM
david2050 closed D25191: Modify df_iterator to support post-order actions by committing rL283391: Modify df_iterator to support post-order actions.
Oct 5 2016, 2:45 PM
david2050 added a comment to D25191: Modify df_iterator to support post-order actions.

Any additional suggestions for this diff?

Oct 5 2016, 2:28 PM

Oct 3 2016

david2050 added a comment to D25191: Modify df_iterator to support post-order actions.

For illustration, this is what the client code looks like (abstracted a bit) for at least one back edge in a loop.
(Note this code is still order dependent in that the specific edges selected as back edges is order dependent for irreducible loops but is well defined otherwise).

Oct 3 2016, 1:43 PM
david2050 retitled D25191: Modify df_iterator to support post-order actions from to Modify df_iterator to support post-order actions.
Oct 3 2016, 9:05 AM

Oct 1 2016

david2050 added inline comments to D24918: [ADCE] Add code to remove dead branches.
Oct 1 2016, 8:40 AM
david2050 added inline comments to D24918: [ADCE] Add code to remove dead branches.
Oct 1 2016, 8:36 AM

Sep 28 2016

david2050 updated subscribers of D24918: [ADCE] Add code to remove dead branches.
Sep 28 2016, 6:55 AM

Sep 26 2016

david2050 retitled D24918: [ADCE] Add code to remove dead branches from to [ADCE] Add code to remove dead branches.
Sep 26 2016, 8:02 AM

Sep 19 2016

david2050 committed rL281947: Merge branch 'ADCE5'.
Merge branch 'ADCE5'
Sep 19 2016, 4:26 PM
david2050 closed D23824: [ADCE] Add handling of PHI nodes when removing control flow.
Sep 19 2016, 4:25 PM
david2050 updated the diff for D23824: [ADCE] Add handling of PHI nodes when removing control flow.

Respond to David's comments

Sep 19 2016, 10:37 AM
david2050 added inline comments to D23824: [ADCE] Add handling of PHI nodes when removing control flow.
Sep 19 2016, 10:35 AM
david2050 added a comment to D23824: [ADCE] Add handling of PHI nodes when removing control flow.

ping

Sep 19 2016, 8:15 AM

Sep 9 2016

david2050 updated the diff for D23824: [ADCE] Add handling of PHI nodes when removing control flow.

Introduce CFLive field to mark blocks whose control dependence sources should be live; use this for PHI predecessors and blocks with live operations

Sep 9 2016, 6:58 AM

Sep 7 2016

david2050 updated the diff for D23824: [ADCE] Add handling of PHI nodes when removing control flow.

Change handling of PHI nodes to force predecessors live

Sep 7 2016, 7:13 PM

Sep 6 2016

david2050 added a comment to D23824: [ADCE] Add handling of PHI nodes when removing control flow.

This snippet

Sep 6 2016, 3:55 PM
david2050 added a comment to D23824: [ADCE] Add handling of PHI nodes when removing control flow.

I ran this test:

Sep 6 2016, 3:30 PM
david2050 added inline comments to D23824: [ADCE] Add handling of PHI nodes when removing control flow.
Sep 6 2016, 12:30 PM
david2050 added inline comments to D23824: [ADCE] Add handling of PHI nodes when removing control flow.
Sep 6 2016, 11:12 AM
david2050 added inline comments to D23824: [ADCE] Add handling of PHI nodes when removing control flow.
Sep 6 2016, 9:12 AM

Sep 5 2016

david2050 added inline comments to D23824: [ADCE] Add handling of PHI nodes when removing control flow.
Sep 5 2016, 10:32 AM

Sep 1 2016

david2050 added inline comments to D23824: [ADCE] Add handling of PHI nodes when removing control flow.
Sep 1 2016, 9:10 AM

Aug 26 2016

david2050 updated the diff for D23876: [CFLAA] On-Demand variant of Context Free Language Alias Analysis.

Cleanup comments and small refactorings

Aug 26 2016, 4:00 PM

Aug 25 2016

david2050 updated the diff for D23824: [ADCE] Add handling of PHI nodes when removing control flow.

fix typo

Aug 25 2016, 12:36 PM
david2050 added inline comments to D23824: [ADCE] Add handling of PHI nodes when removing control flow.
Aug 25 2016, 12:34 PM
david2050 updated the diff for D23824: [ADCE] Add handling of PHI nodes when removing control flow.

Address comments.
Remove code that is functionally redundant.

Aug 25 2016, 11:47 AM
david2050 updated D23876: [CFLAA] On-Demand variant of Context Free Language Alias Analysis.
Aug 25 2016, 10:16 AM
david2050 retitled D23876: [CFLAA] On-Demand variant of Context Free Language Alias Analysis from to [CFLAA] On-Demand variant of Context Free Language Alias Analysis.
Aug 25 2016, 8:09 AM

Aug 24 2016

david2050 updated the diff for D23824: [ADCE] Add handling of PHI nodes when removing control flow.

Expand comments on actions taken by makeLivePhiNodeInputs

Aug 24 2016, 6:04 AM

Aug 23 2016

david2050 updated the diff for D23824: [ADCE] Add handling of PHI nodes when removing control flow.

Use auto keyword

Aug 23 2016, 8:46 PM
david2050 retitled D23824: [ADCE] Add handling of PHI nodes when removing control flow from to [ADCE] Add handling of PHI nodes when removing control flow.
Aug 23 2016, 6:54 PM
david2050 committed rL279594: [ADCE] Add control dependence computation.
[ADCE] Add control dependence computation
Aug 23 2016, 5:18 PM
david2050 closed D23559: [ADCE] Add control dependence computation.
Aug 23 2016, 5:17 PM
david2050 added a comment to D23559: [ADCE] Add control dependence computation.

What should we do at this point? Should I add code to restrict use of PDT to -O3 or do that in a later diff?

Aug 23 2016, 8:55 AM

Aug 22 2016

david2050 added inline comments to D23559: [ADCE] Add control dependence computation.
Aug 22 2016, 1:38 PM
david2050 added inline comments to D23559: [ADCE] Add control dependence computation.
Aug 22 2016, 12:41 PM

Aug 19 2016

david2050 updated the diff for D23559: [ADCE] Add control dependence computation.

Add a missing block which logically fits with this diff (since not yet accepted)

Aug 19 2016, 2:09 PM

Aug 16 2016

david2050 updated the diff for D23559: [ADCE] Add control dependence computation.

fix comments

Aug 16 2016, 10:06 AM
david2050 retitled D23559: [ADCE] Add control dependence computation from to [ADCE] Add control dependence computation.
Aug 16 2016, 8:21 AM
david2050 committed rL278807: [ADCE] Modify data structures to support removing control flow.
[ADCE] Modify data structures to support removing control flow
Aug 16 2016, 7:39 AM
david2050 closed D23225: [ADCE] Modify data structures to support removing control flow.
Aug 16 2016, 7:39 AM

Aug 9 2016

david2050 added a comment to D23225: [ADCE] Modify data structures to support removing control flow.

All comments have been addressed

Aug 9 2016, 4:31 PM
david2050 updated the diff for D23225: [ADCE] Modify data structures to support removing control flow.

Remove BlockInfoVec and move data structure into BlockInfo map.

Aug 9 2016, 4:30 PM

Aug 5 2016

david2050 updated the diff for D23225: [ADCE] Modify data structures to support removing control flow.

Address comments

Aug 5 2016, 3:28 PM
david2050 added inline comments to D23225: [ADCE] Modify data structures to support removing control flow.
Aug 5 2016, 3:25 PM
david2050 updated the diff for D23225: [ADCE] Modify data structures to support removing control flow.

Address comments

Aug 5 2016, 3:21 PM
david2050 added inline comments to D23225: [ADCE] Modify data structures to support removing control flow.
Aug 5 2016, 3:17 PM
david2050 updated the diff for D23225: [ADCE] Modify data structures to support removing control flow.

Address comments

Aug 5 2016, 3:11 PM
david2050 added a comment to D23225: [ADCE] Modify data structures to support removing control flow.

Thanks!

Aug 5 2016, 3:03 PM
david2050 updated the diff for D23225: [ADCE] Modify data structures to support removing control flow.

address review comments

Aug 5 2016, 2:53 PM
david2050 added inline comments to D23225: [ADCE] Modify data structures to support removing control flow.
Aug 5 2016, 2:35 PM
david2050 retitled D23225: [ADCE] Modify data structures to support removing control flow from to [ADCE] Modify data structures to support removing control flow.
Aug 5 2016, 1:33 PM
david2050 committed rL277855: [ADCE] Refactoring for new functionality (NFC).
[ADCE] Refactoring for new functionality (NFC)
Aug 5 2016, 12:46 PM
david2050 closed D23102: [ADCE] Refactoring for new functionality (NFC).
Aug 5 2016, 12:45 PM
david2050 committed rL277849: [AutoFDO] Fix handling of empty profiles.
[AutoFDO] Fix handling of empty profiles
Aug 5 2016, 11:46 AM
david2050 closed D23082: [AutoFDO] Fix handling of empty profiles by committing rL277849: [AutoFDO] Fix handling of empty profiles.
Aug 5 2016, 11:46 AM
david2050 added a comment to D23082: [AutoFDO] Fix handling of empty profiles.

Thanks, would one of you please accept?

Aug 5 2016, 10:05 AM
david2050 added inline comments to D23102: [ADCE] Refactoring for new functionality (NFC).
Aug 5 2016, 10:04 AM

Aug 3 2016

david2050 abandoned D7451: PR17623 -- GlobalsModRef alias error fix.
Aug 3 2016, 1:47 PM
david2050 updated the diff for D23102: [ADCE] Refactoring for new functionality (NFC).

Save David's suggestions. Add parameter name

Aug 3 2016, 10:50 AM
david2050 updated the diff for D23102: [ADCE] Refactoring for new functionality (NFC).

Doxygen style comments with periods. Fix spelling of Aggressive

Aug 3 2016, 10:25 AM

Aug 2 2016

david2050 retitled D23102: [ADCE] Refactoring for new functionality (NFC) from to [ADCE] Refactoring for new functionality (NFC).
Aug 2 2016, 9:44 PM
david2050 committed rL277565: [ADCE] Refactor anticipating new functionality (NFC).
[ADCE] Refactor anticipating new functionality (NFC)
Aug 2 2016, 9:36 PM
david2050 closed D23065: [ADCE] Refactor anticipating new functionality (NFC).
Aug 2 2016, 9:35 PM
david2050 added a comment to D23065: [ADCE] Refactor anticipating new functionality (NFC).

I have a process question.
Will we commit the incremental diffs? in which case would one of you "accept" this on.
Or do I continue to update this diff with more changes until we are code complete?

Aug 2 2016, 8:56 PM
david2050 updated the diff for D23082: [AutoFDO] Fix handling of empty profiles.

fix formatting

Aug 2 2016, 1:26 PM
david2050 updated the diff for D23065: [ADCE] Refactor anticipating new functionality (NFC).

Comments for state variables

Aug 2 2016, 1:05 PM
david2050 retitled D23082: [AutoFDO] Fix handling of empty profiles from to [AutoFDO] Fix handling of empty profiles.
Aug 2 2016, 12:58 PM
david2050 updated subscribers of D23065: [ADCE] Refactor anticipating new functionality (NFC).
Aug 2 2016, 9:18 AM
david2050 added reviewers for D23065: [ADCE] Refactor anticipating new functionality (NFC): nadav, mehdi_amini, majnemer.
Aug 2 2016, 9:18 AM
david2050 updated the diff for D23065: [ADCE] Refactor anticipating new functionality (NFC).

Undo a clang-format include reordering

Aug 2 2016, 9:16 AM
david2050 retitled D23065: [ADCE] Refactor anticipating new functionality (NFC) from to [ADCE] Refactor anticipating new functionality (NFC).
Aug 2 2016, 9:13 AM
david2050 added a reverting change for rL277454: test commit: rL277455: Revert rL277454.
Aug 2 2016, 6:33 AM
david2050 committed rL277455: Revert rL277454.
Revert rL277454
Aug 2 2016, 6:33 AM
david2050 committed rL277454: test commit.
test commit
Aug 2 2016, 6:26 AM

Jul 27 2016

david2050 added a comment to D22886: [llvm] Loop Vectorization fault in collectLoopUni.

Wei would you commit, I don't have permissions

Jul 27 2016, 4:28 PM
david2050 updated the diff for D22886: [llvm] Loop Vectorization fault in collectLoopUni.

Added test case

Jul 27 2016, 4:27 PM
david2050 retitled D22886: [llvm] Loop Vectorization fault in collectLoopUni from to [llvm] Loop Vectorization fault in collectLoopUni.
Jul 27 2016, 2:50 PM

Jun 30 2016

david2050 added a comment to D18762: Rewrite Aggressive Dead Code Elimination.

I am sympathetic of course to the view of incremental changes but I don't really think it is effective in this case because so much functionality has to come online in one go. There is a kernel this is common (propagating liveness as a sparse backwards flow problem, lines 488-497) but that is quite small. The next logical step is to defer deleting branches until you know they control something live. This needs to be done in batches to use IDFCalculator efficiently and adds an outer loop. However, once you start having *any* dead control flow you need to deal with the complexities of phi nodes and the attendant problems with changing the control flow graph. There is not really any useful intermediate step,

Jun 30 2016, 3:39 PM
david2050 updated D18762: Rewrite Aggressive Dead Code Elimination.
Jun 30 2016, 8:33 AM
david2050 retitled D18762: Rewrite Aggressive Dead Code Elimination from Add Aggressive Control Dead Code Elimination to Rewrite Aggressive Dead Code Elimination.
Jun 30 2016, 8:26 AM
david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

Following Chandler's feedback, modified to simply replace the existing
ADCE rather than having two implementations. Reused baseline names.

Jun 30 2016, 8:23 AM

Jun 9 2016

david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

Replace the baseline ADCE with this implementation modified to
not build the post-dominator tree and in that case retain all
control flow. This preserves prior behavior for -O1 and -O2 and avoids
the extra cost needed to remove control flow.

Jun 9 2016, 8:19 AM

Jun 8 2016

david2050 added a comment to D18762: Rewrite Aggressive Dead Code Elimination.

From Chandler by email:

Jun 8 2016, 9:59 AM

Jun 6 2016

david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.
  • Merge branch 'master' into acdce-with-idf-for-review
Jun 6 2016, 2:11 PM
david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

Address comments

Jun 6 2016, 1:28 PM
david2050 added a comment to D18762: Rewrite Aggressive Dead Code Elimination.

Thanks for the review

Jun 6 2016, 1:27 PM

Apr 30 2016

david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

Bug fix in handling of "hard" phi nodes

Apr 30 2016, 5:47 AM

Apr 27 2016

david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

Update two recently added test and fix a bug incorporating changes to
ADCE.cpp

Apr 27 2016, 8:33 AM

Apr 26 2016

david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

and the formatting one in ACDCE.h

Apr 26 2016, 1:53 PM
david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

Fix formatting errors

Apr 26 2016, 1:51 PM
david2050 added a comment to D18762: Rewrite Aggressive Dead Code Elimination.

Thanks.

Apr 26 2016, 1:07 PM
david2050 added inline comments to D19527: LTOCodeGenerator: add linkonce to llvm.used when in "MustPreserve" set.
Apr 26 2016, 8:34 AM
david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

Cleanp in response to review comments

Apr 26 2016, 8:23 AM

Apr 25 2016

david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

Update to recent ADCE changes

Apr 25 2016, 9:41 AM

Apr 19 2016

david2050 updated the diff for D18762: Rewrite Aggressive Dead Code Elimination.

Update to new IDFCalculator

Apr 19 2016, 8:16 AM

Apr 18 2016

david2050 updated subscribers of D18796: Correct IDF calculator for ReverseIDF.
Apr 18 2016, 2:25 PM