[PATCH] D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change]

2019-05-23 Thread Alina Sbirlea via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC361534: [NewPassManager] Add tuning option: SLPVectorization [clang-change] (authored by asbirlea, committed by ). Changed prior to commit: https://reviews.llvm.org/D61617?vs=198587=201033#toc

[PATCH] D61620: [NewPassManager] Add tuning option: LoopUnrolling [clang-change]

2019-05-24 Thread Alina Sbirlea via Phabricator via cfe-commits
This revision was not accepted when it landed; it landed in state "Needs Review". This revision was automatically updated to reflect the committed changes. Closed by commit rL361653: [NewPassManager] Add tuning option: LoopUnrolling [clang-change] (authored by asbirlea, committed by ). Herald

[PATCH] D61142: Set LoopInterleaved in the PassManagerBuilder.

2019-04-30 Thread Alina Sbirlea via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC359616: Set LoopInterleaved in the PassManagerBuilder. (authored by asbirlea, committed by ). Changed prior to commit: https://reviews.llvm.org/D61142?vs=196696=197445#toc Repository: rC Clang

[PATCH] D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change]

2019-05-06 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea created this revision. asbirlea added a reviewer: chandlerc. Herald added subscribers: cfe-commits, jlebar. Herald added a project: clang. NewPassManager is not using CodeGenOpts values before this patch. [to be coupled with D61616 ] Repository: rC

[PATCH] D61620: [NewPassManager] Add tuning option: LoopUnrolling [clang-change]

2019-05-06 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea created this revision. asbirlea added a reviewer: chandlerc. Herald added subscribers: cfe-commits, dmgreen, jlebar. Herald added a project: clang. Use CodeGenOpts's setting for loop unrolling. [to be coupled with D61618 ] Repository: rC Clang

[PATCH] D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change]

2019-05-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 198540. asbirlea added a comment. Added test. The last RUN line fails before this patch (i.e. the flag to disable vectorization was not used by the new pass manager) Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D61617/new/

[PATCH] D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change]

2019-05-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 198562. asbirlea added a comment. Updated test. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D61617/new/ https://reviews.llvm.org/D61617 Files: lib/CodeGen/BackendUtil.cpp test/CodeGen/loop-vectorize.c Index:

[PATCH] D61620: [NewPassManager] Add tuning option: LoopUnrolling [clang-change]

2019-05-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 198560. asbirlea added a comment. Herald added a subscriber: zzheng. Added test. Last RUN line fails before this patch (i.e. unrolling is not disabled with the given flag in the new pass manager). Repository: rC Clang CHANGES SINCE LAST ACTION

[PATCH] D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change]

2019-05-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 198561. asbirlea added a comment. Rename new test for clarity. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D61617/new/ https://reviews.llvm.org/D61617 Files: lib/CodeGen/BackendUtil.cpp

[PATCH] D61617: [NewPassManager] Add tuning option: SLPVectorization [clang-change]

2019-05-08 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 198587. asbirlea added a comment. Updated test. Improvement suggestions are always *very* much welcome! Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D61617/new/ https://reviews.llvm.org/D61617 Files:

[PATCH] D61620: [NewPassManager] Add tuning option: LoopUnrolling [clang-change]

2019-05-08 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 198704. asbirlea added a comment. Update test. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D61620/new/ https://reviews.llvm.org/D61620 Files: lib/CodeGen/BackendUtil.cpp test/CodeGen/loop-unroll.c Index:

[PATCH] D61879: WIP: Prototype of DSE optimizations for -ftrivial-auto-var-init

2019-07-08 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added inline comments. Comment at: llvm/include/llvm/Analysis/MemorySSA.h:1109 // else. -if (MemoryPhi *MP = dyn_cast(Access)) +if (const MemoryPhi *MP = dyn_cast(Access)) return MP->getIncomingValue(ArgNo); Could changes in this

[PATCH] D61142: Set LoopInterleaved in the PassManagerBuilder.

2019-04-25 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea created this revision. Herald added subscribers: cfe-commits, jlebar. Herald added a project: clang. Corresponds to D61030 . Repository: rC Clang https://reviews.llvm.org/D61142 Files: lib/CodeGen/BackendUtil.cpp Index:

[PATCH] D68535: Fix loop unrolling initialization in the new pass manager

2019-10-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Maybe elaborate in the patch description what `determine when and how we will unroll loops.` means? e.g.: "The default before and after this patch is for LoopUnroll to be enabled, and for it to use a cost model to determine whether to unroll the loop (`OnlyWhenForced

[PATCH] D73162: [test] Avoid loop-unroll.c test getting confused by fadd in git revision

2020-01-22 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. Oh, wow! Might I ask you add the same for fmul? We may get a revision like that next time :). Thank you! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D73162: [test] Avoid loop-unroll.c test getting confused by fadd in git revision

2020-01-22 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. SGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73162/new/ https://reviews.llvm.org/D73162 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-09 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea marked 2 inline comments as done. asbirlea added a comment. Thank you for all the comments. Comment at: llvm/include/llvm/Support/GenericDomTreeConstruction.h:325 +auto = BUI ? BUI->PreViewCFG : EmptyGD; +return !empty(children({, N})); }

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-09 Thread Alina Sbirlea via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGa90374988e4e: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff. (authored by asbirlea). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea marked 4 inline comments as done. asbirlea added inline comments. Comment at: llvm/include/llvm/Support/GenericDomTreeConstruction.h:325 +auto = BUI ? BUI->PreViewCFG : EmptyGD; +return !empty(children({, N})); } kuhar wrote: > This pattern

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 255852. asbirlea marked an inline comment as done. asbirlea added a comment. Name anonymous namespace. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D77341/new/ https://reviews.llvm.org/D77341 Files:

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-02 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea created this revision. asbirlea added reviewers: kuhar, dblaikie, NutshellySima. Herald added subscribers: cfe-commits, hiraditya. Herald added a project: clang. asbirlea added a comment. asbirlea added a parent revision: D77167: [GraphDiff] Extend GraphDiff to track a list of updates..

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-02 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. I sent this out to get some general feedback, but I'd like to be able to simplify the fact that this is replacing a `for` over `ChildrenGetter` with a `for` over `children(pair)`, plus 5 lines to set up the type and pair; one simplification is around getting the type

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-03 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 254943. asbirlea marked 16 inline comments as done. asbirlea added a comment. Address comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D77341/new/ https://reviews.llvm.org/D77341 Files:

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-03 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added inline comments. Comment at: llvm/include/llvm/Support/GenericDomTreeConstruction.h:185 + std::make_pair(GDTmp, BB); + for (auto : children(GDNodePair)) { +const NodePtr Succ = Pair.second; kuhar wrote: > Won't children

[PATCH] D72893: [NewPassManager] Add assertions when getting statefull cached analysis.

2020-04-01 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 254378. asbirlea added a comment. Herald added a project: clang. Herald added a subscriber: cfe-commits. Update clang test. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72893/new/

[PATCH] D78659: Add nomerge function attribute to supress tail merge optimization in simplifyCFG

2020-04-24 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. I think that expanding the patch description will help motivate this and clarify the use-cases for which this is useful, and how it differentiates from `noinline`. Perhaps include that the attribute aims to avoid merging identical calls so as to keep the separate

[PATCH] D72893: [NewPassManager] Add assertions when getting statefull cached analysis.

2020-04-22 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 259450. asbirlea marked 8 inline comments as done. asbirlea added a comment. Address comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72893/new/ https://reviews.llvm.org/D72893 Files:

[PATCH] D72893: [NewPassManager] Add assertions when getting statefull cached analysis.

2020-04-22 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added inline comments. Comment at: llvm/include/llvm/Analysis/CGSCCPassManager.h:856-858 +auto *ResultFAMCP = +(*C, CG); +ResultFAMCP->updateFAM(FAM); chandlerc wrote: > Check that it doesn't hit an assert failure, but I

[PATCH] D72893: [NewPassManager] Add assertions when getting statefull cached analysis.

2020-04-30 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Gentle ping for more comments :-) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72893/new/ https://reviews.llvm.org/D72893 ___ cfe-commits mailing list

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-30 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 261404. asbirlea added a comment. Rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D77341/new/ https://reviews.llvm.org/D77341 Files: clang/include/clang/Analysis/Analyses/Dominators.h

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-04-30 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea reopened this revision. asbirlea added a comment. This revision is now accepted and ready to land. Herald added a project: LLVM. I'm working to update this revision to address the compile-time regression. Re-opening so I can rebase and add misc fixes and will mark as changes planned

[PATCH] D78659: Add nomerge function attribute to supress tail merge optimization in simplifyCFG

2020-05-04 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. Thank you for adding this! Please update first sentence in the description to: We want to add a way to avoid merging identical calls so as to keep the separate debug-information for

[PATCH] D72893: [NewPassManager] Add assertions when getting statefull cached analysis.

2020-05-12 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 263590. asbirlea marked 3 inline comments as done. asbirlea added a comment. Address comments. Thank you for the review! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72893/new/

[PATCH] D72893: [NewPassManager] Add assertions when getting statefull cached analysis.

2020-05-13 Thread Alina Sbirlea via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGbd541b217f4d: [NewPassManager] Add assertions when getting statefull cached analysis. (authored by asbirlea). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D72893: [NewPassManager] Add assertions when getting statefull cached analysis.

2020-05-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Weekly re-ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72893/new/ https://reviews.llvm.org/D72893 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D87163: [DSE] Switch to MemorySSA-backed DSE by default.

2020-09-10 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. I'm running additional testing in the background. I don't have anything holding this back at this point. Either check in and if something shows up, I'll let you know to resolve or revert,

[PATCH] D87163: [DSE] Switch to MemorySSA-backed DSE by default.

2020-09-09 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. Green light from me as well. I think there's still room for improvement for the NPM, but this is the right step to move forward infrastructure-wise. Regarding the MemCpyOpt question from nikic@, please let me know if you want to take

[PATCH] D87163: [DSE] Switch to MemorySSA-backed DSE by default.

2020-09-09 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea requested changes to this revision. asbirlea added a comment. This revision now requires changes to proceed. I'm running into a crash with this, could you please hold off until tomorrow? I'm working on getting a reproducer. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D87163: [DSE] Switch to MemorySSA-backed DSE by default.

2020-09-09 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added inline comments. Comment at: llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp:312 switch (II->getIntrinsicID()) { default: llvm_unreachable("doesn't pass 'hasAnalyzableMemoryWrite' predicate"); case Intrinsic::lifetime_end: The

[PATCH] D87163: [DSE] Switch to MemorySSA-backed DSE by default.

2020-09-15 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Yes, the load should have the Phi as the defining access. I'm still looking into where this information should come from, but it's not hitting the phi translation. Thank you for the revert, I'll update with the fix once I have it available. Repository: rG LLVM

[PATCH] D87163: [DSE] Switch to MemorySSA-backed DSE by default.

2020-09-15 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Right! I believe the solution is to set the location size to unknown after a phi translation with the same ptr, but I need to properly verify that. // include/llvm/Analysis/MemorySSA.h:1233 CurrentPair.second = Location.getWithNewSize(LocationSize::unknown());

[PATCH] D87163: [DSE] Switch to MemorySSA-backed DSE by default.

2020-09-16 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. I checked in a fix in https://reviews.llvm.org/rGfc8200633122, but I haven't yet verified it addresses all the failures reported. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D87163/new/ https://reviews.llvm.org/D87163

[PATCH] D88138: [NPM] Add target specific hook to add passes for New Pass Manager

2020-10-05 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Thank you, Ankit! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88138/new/ https://reviews.llvm.org/D88138 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D85676: [NewPM] collapsing nested pass mangers of the same type

2020-08-28 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. Seems like a good idea. I'm curious if you saw any impact from this change. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85676/new/

[PATCH] D84713: [DominatorTree] Simplify ChildrenGetter.

2020-08-21 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Done in https://reviews.llvm.org/rG7ea0ee30588, Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D84713/new/ https://reviews.llvm.org/D84713 ___ cfe-commits mailing list

[PATCH] D86156: [BFI] Preserve BFI information through loop passes via VH callbacks inside LoopStandardAnalysisResults

2020-08-20 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea requested changes to this revision. asbirlea added a comment. This revision now requires changes to proceed. A couple of quick comments, I haven't gone into details yet. - please split off the changes that are NFCs (deleted spaces) and clang-format for ease to review. - the test

[PATCH] D86156: [BFI] Preserve BFI information through loop passes via VH callbacks inside LoopStandardAnalysisResults

2020-08-26 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added inline comments. Comment at: llvm/lib/Passes/PassBuilder.cpp:522 FPM.addPass(createFunctionToLoopPassAdaptor( - std::move(LPM2), /*UseMemorySSA=*/false, DebugLogging)); + std::move(LPM2), /*UseMemorySSA=*/false, /*UseBlockFrequencyInfo=*/true, +

[PATCH] D86156: [BFI] Preserve BFI information through loop passes via VH callbacks inside LoopStandardAnalysisResults

2020-08-27 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Your understanding is correct. I only have one more comment on preserving passes in LICM too. As a general note, it may make sense to include BFI in the set of loop passes always preserved (`getLoopPassPreservedAnalyses()`), if its nature is to always be preserved

[PATCH] D86156: [BFI] Preserve BFI information through loop passes via VH callbacks inside LoopStandardAnalysisResults

2020-08-27 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. Diff looks reasonable at this point. Thank you for the patch! Please wait on @nikic for compile-time impact or additional feedback. Just out of curiosity, in D65060 , it was mentioned that using BFI got

[PATCH] D86156: [BFI] Preserve BFI information through loop passes via VH callbacks inside LoopStandardAnalysisResults

2020-08-27 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added inline comments. Comment at: llvm/include/llvm/Transforms/Scalar/LoopPassManager.h:273 : nullptr; +BlockFrequencyInfo *BFI = UseBlockFrequencyInfo + ? ((F)) Add `&&

[PATCH] D87163: [DSE] Switch to MemorySSA-backed DSE by default.

2020-09-14 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. I'd suggest reverting if the failures are blocking, but we do need a reproducer so it can be recommitted after a fix is in place. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D87163/new/ https://reviews.llvm.org/D87163

[PATCH] D89158: [NewPM] Run all EP callbacks under -O0

2020-10-27 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added inline comments. Comment at: llvm/lib/Passes/PassBuilder.cpp:1659 + bool DebugLogging) { + for (auto : PipelineStartEPCallbacks) +C(MPM); aeubanks wrote: > ychen wrote: > > What I have in mind is a

[PATCH] D84713: [DominatorTree] Simplify ChildrenGetter.

2020-07-29 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. I'm looking into it. If needed this can be reverted as it's not blocking the work for DomTree updates with a CFGView. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D84713/new/ https://reviews.llvm.org/D84713

[PATCH] D83013: [LPM] Port CGProfilePass from NPM to LPM

2020-07-06 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. In D83013#2132088 , @aeubanks wrote: > In D83013#2132070 , @echristo wrote: > > > Adding Chandler and Alina here as well. > > > > In general, I don't think that this is such a great idea.

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-07-10 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Thank you for the testing. Could you help with with instructions on how to run the tracker myself? My local testing showed a negligible regression for mafft and a negligible improvement on other benchmarks, so it looked like noise on average. Repository: rG LLVM

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-07-09 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 276891. asbirlea added a comment. Nit: re-add `const`s Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D77341/new/ https://reviews.llvm.org/D77341 Files: llvm/include/llvm/IR/Dominators.h

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-07-09 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 276890. asbirlea added a comment. This revision is now accepted and ready to land. Updated to include the part of the patch that's moving the Updates to a CFGDiff object. Splitting off from the clean-up work merging the two branches when BUI is null. This

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-07-24 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Great, thank you for confirming :-) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D77341/new/ https://reviews.llvm.org/D77341 ___ cfe-commits mailing list

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-07-24 Thread Alina Sbirlea via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG8bf4c1f4fb25: Reapply [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff. (authored by asbirlea). Changed prior to commit: https://reviews.llvm.org/D77341?vs=280326=280590#toc

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-07-24 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Yes. The difference in perf in instructions and cycles count is due to reversing the update order. I'm still not seeing meaningful changes in wall-time even with the update order reversed, but reliable wall-time testing is hard. I do have changes that - drop the

[PATCH] D84713: [DominatorTree] Simplify ChildrenGetter.

2020-07-28 Thread Alina Sbirlea via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGe22de4e46d1d: [DominatorTree] Simplify ChildrenGetter. (authored by asbirlea). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D84713: [DominatorTree] Simplify ChildrenGetter.

2020-07-28 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 281382. asbirlea added a comment. Renamed ChildrenGet to getChildren. The same name only exists in GraphDiff, it's ok to keep a consistent naming. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D84713/new/

[PATCH] D84774: [NewPM][PassInstrument] Add PrintPass callback to StandardInstrumentations

2020-07-28 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Does it make sense to have the option to enable seeing where the adaptors are run? Otherwise this looks good, it's nice to have the "Starting" and "Finished" match now. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D84774: [NewPM][PassInstrument] Add PrintPass callback to StandardInstrumentations

2020-07-28 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. I'm ok if this is added in either this or a follow-up patch. I think it's useful to have it in the codebase now, with one test to showcase it (e.g. do another run line in

[PATCH] D84713: [DominatorTree] Simplify ChildrenGetter.

2020-07-27 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea created this revision. asbirlea added reviewers: kuhar, dblaikie. Herald added projects: clang, LLVM. Herald added a subscriber: cfe-commits. Simplify ChildrenGetter to a simple wrapper around a GraphDiff call. GraphDiff already handles nullptr in children, so the special casing in clang

[PATCH] D77341: [DomTree] Replace ChildrenGetter with GraphTraits over GraphDiff.

2020-07-23 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea updated this revision to Diff 280326. asbirlea added a comment. The increase in number of instructions and cycles was caused by reversing the order in which the updates are applied by GraphDiff. I'll look into re-adding some of the original cleanups in a follow-up patch. Repository:

[PATCH] D93743: [NewPM] Run ObjC ARC passes

2021-01-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. The changes LGTM, but I'd rather defer final review to ahatanak@. It would be good to have some testing but it could be addressed in a separate patch, potentially by folks more familiar with the ObjCARC passes. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D92436: [Time-report] Add a flag -ftime-report={per-pass,per-pass-run} to control the pass timing aggregation

2020-12-07 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. lgtm. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92436/new/ https://reviews.llvm.org/D92436

[PATCH] D93002: [NPM] Support -fmerge-functions

2020-12-10 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. Thank you for adding this support. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D93002/new/ https://reviews.llvm.org/D93002

[PATCH] D89158: [NewPM] Provide method to run all pipeline callbacks, used for -O0

2020-11-11 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. AFAICT all issues were addressed. @Meinersbur: are there any concerns left with this patch? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89158/new/ https://reviews.llvm.org/D89158

[PATCH] D90437: [NFC] Clean up PassBuilder

2020-10-29 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. Neat! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90437/new/ https://reviews.llvm.org/D90437

[PATCH] D106401: [CUDA, MemCpyOpt] Add a flag to force-enable memcpyopt and use it for CUDA.

2021-08-06 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. lgtm. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D106401/new/ https://reviews.llvm.org/D106401

[PATCH] D111471: [NVPTX] Add a late SROA pass which allows optimizing away more allocas.

2021-10-18 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111471/new/ https://reviews.llvm.org/D111471

[PATCH] D113304: [NewPM] Only invalidate modified functions' analyses in CGSCC passes + turn on eagerly invalidate analyses

2021-11-08 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Thank you for the additional clarifications in the comments and descriptions! The invalidations are essentially postponed until after the function simplification pipeline with this patch. Before, everything was invalidated in the SCC pass even if only one function was

[PATCH] D113304: [NewPM] Only invalidate modified functions' analyses in CGSCC passes + turn on eagerly invalidate analyses

2021-11-09 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. LGTM, but please wait to see if @nikic has additional comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D113304/new/

[PATCH] D113210: [NewPM] Use the default AA pipeline by default

2021-11-04 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Can you also update `lib/LTO/LTOBackend.cpp` to something like: // Parse a custom AA pipeline if asked to, otherwise the default will be used. if (!Conf.AAPipeline.empty()) { AAManager AA; if (auto Err = PB.parseAAPipeline(AA, Conf.AAPipeline)) {

[PATCH] D140068: [NFC] Rename Function::insertBasicBlockAt() to Function::insert().

2022-12-15 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. lgtm. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140068/new/ https://reviews.llvm.org/D140068

[PATCH] D140085: [NFC] Rename Instruction::insertAt() to Instruction::insertInto(), to be consistent with BasicBlock::insertInto()

2022-12-15 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. Rebase to trigger pre-merge checks? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140085/new/ https://reviews.llvm.org/D140085

[PATCH] D136806: [Pipelines] Introduce SROA after (final, full) loop unrolling

2022-11-16 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. As far as performance, this looks fine. Not seeing measurable gains. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D136806/new/ https://reviews.llvm.org/D136806 ___ cfe-commits

[PATCH] D136806: [Pipelines] Introduce SROA after (final, full) loop unrolling

2022-11-17 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Green light perf-wise. I cannot comment on whether the position is "the right" one though. I'm deferring to the other reviewers. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D136806/new/ https://reviews.llvm.org/D136806

[PATCH] D136806: [Pipelines] Introduce SROA after (final, full) loop unrolling

2022-11-15 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. IIUC compile time impact for adding another SROA (the one outside LTO) is negligible? Regarding the principle of adding another pass and where in the pipeline, we're still at a case by case basis. We had a discussion/round table at LLVM Dev on the documenting the

[PATCH] D133574: [C2x] reject type definitions in offsetof

2023-01-26 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Following this change, the following emits warnings: https://godbolt.org/z/cvGdMWqEa, https://godbolt.org/z/GhTP85WzE Can you please fix fwd or revert until resolved? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D145265: [Pipeline] Remove GlobalCleanupPM

2023-03-27 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea added a comment. Nit: the diffs would be easier to analyze with "-fno-discard-value-names". Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145265/new/ https://reviews.llvm.org/D145265 ___

[PATCH] D145265: [Pipeline] Remove GlobalCleanupPM

2023-05-24 Thread Alina Sbirlea via Phabricator via cfe-commits
asbirlea accepted this revision. asbirlea added a comment. This revision is now accepted and ready to land. This went through a few rounds of testing on our internal benchmarks and it's at a point where there are no meaningful run-time regressions observed, but the compile-time improvements