Page MenuHomePhabricator
Feed Advanced Search

Aug 3 2019

Meinersbur committed rL367774: Revert "[OpenMP 5.0] Codegen support for user-defined mappers.".
Revert "[OpenMP 5.0] Codegen support for user-defined mappers."
Aug 3 2019, 10:17 PM
Meinersbur added inline comments to D59978: [Attributor] Deduce the "no-return" attribute for functions.
Aug 3 2019, 10:10 PM · Restricted Project
Meinersbur committed rGa04ffdbb05fb: [OpenMP 5.0] Codegen support for user-defined mappers. (authored by Meinersbur).
[OpenMP 5.0] Codegen support for user-defined mappers.
Aug 3 2019, 9:21 PM
Meinersbur committed rG2c7a8eaf3d3f: [OpenMP 5.0] libomptarget interface for declare mapper functions. (authored by Meinersbur).
[OpenMP 5.0] libomptarget interface for declare mapper functions.
Aug 3 2019, 9:21 PM
Meinersbur committed rL367773: [OpenMP 5.0] Codegen support for user-defined mappers..
[OpenMP 5.0] Codegen support for user-defined mappers.
Aug 3 2019, 9:18 PM
Meinersbur closed D59474: [OpenMP 5.0] Codegen support for user-defined mappers.
Aug 3 2019, 9:18 PM · Restricted Project, Restricted Project, Restricted Project
Meinersbur committed rL367772: [OpenMP 5.0] libomptarget interface for declare mapper functions..
[OpenMP 5.0] libomptarget interface for declare mapper functions.
Aug 3 2019, 9:18 PM
Meinersbur closed D60972: [OpenMP 5.0] libomptarget interface for declare mapper functions.
Aug 3 2019, 9:17 PM · Restricted Project, Restricted Project

Aug 2 2019

Meinersbur created D65687: [libomptarget] Harmonize emitting CUDA errors and general debug messages..
Aug 2 2019, 5:44 PM · Restricted Project, Restricted Project
Meinersbur added inline comments to D59978: [Attributor] Deduce the "no-return" attribute for functions.
Aug 2 2019, 12:41 PM · Restricted Project
Meinersbur added inline comments to D59978: [Attributor] Deduce the "no-return" attribute for functions.
Aug 2 2019, 8:40 AM · Restricted Project

Aug 1 2019

Meinersbur added inline comments to D59978: [Attributor] Deduce the "no-return" attribute for functions.
Aug 1 2019, 12:56 PM · Restricted Project
Meinersbur added inline comments to D59978: [Attributor] Deduce the "no-return" attribute for functions.
Aug 1 2019, 9:48 AM · Restricted Project

Jul 31 2019

Meinersbur added a comment to D61446: Generalize the pass registration mechanism used by Polly to any third-party tool.

Did you resolve the conflicting llvmGetPassPluginInfo symbols for windows?

Jul 31 2019, 9:23 AM · Restricted Project, Restricted Project

Jul 30 2019

Meinersbur requested changes to D64564: Loop pragma parsing. NFC..
Jul 30 2019, 8:44 AM · Restricted Project
Meinersbur accepted D64564: Loop pragma parsing. NFC..

LGTM

Jul 30 2019, 8:35 AM · Restricted Project

Jul 29 2019

Meinersbur added inline comments to D65350: [DDG] Data Dependence Graph Basics.
Jul 29 2019, 4:24 PM · Restricted Project
Meinersbur added a comment to D65164: Define some basic terminology around loops in our documentation.

I am unhappy about this having been committed already. Now we have official documentation at https://llvm.org/docs/LoopTerminology.html which is partially wrong.

Jul 29 2019, 3:00 PM · Restricted Project
Meinersbur added a comment to D65197: [LV] Tail-loop Folding.

Looks fine to me, but see what the other reviewers say.

Jul 29 2019, 12:45 PM · Restricted Project

Jul 26 2019

Meinersbur added a comment to D65295: [opt] Ensure the IR-Linker is available to plugins..

The CMake build system option PLUGIN_TOOL on add_llvm_loadable_module is for this specific purpose, it instructs the link step for the plugin dylib to resolve symbols against the tool.

Polly likely needs to generate different libraries for being a clang plugin vs being an opt plugin, but that is expected and the correct solution to this problem.

Jul 26 2019, 10:57 AM · Restricted Project
Meinersbur added inline comments to D65257: Describe resticted form of loops in the new loop terminogy documentation.
Jul 26 2019, 7:27 AM · Restricted Project
Meinersbur added a comment to D65295: [opt] Ensure the IR-Linker is available to plugins..

What about "force-load" the archive libraries on link? See what we do in MLIR here: https://github.com/tensorflow/mlir/blob/master/CMakeLists.txt#L22

Jul 26 2019, 6:57 AM · Restricted Project

Jul 25 2019

Meinersbur added a comment to D65241: [Polly][NFC][ScopBuilder] Move addUserAssumptions to ScopBuilder.

Maybe you can make a final review when I propose next patch with moved buildDomains functions?

Jul 25 2019, 2:00 PM · Restricted Project
Meinersbur created D65295: [opt] Ensure the IR-Linker is available to plugins..
Jul 25 2019, 11:28 AM · Restricted Project
Meinersbur added a comment to D65241: [Polly][NFC][ScopBuilder] Move addUserAssumptions to ScopBuilder.

[remark] Summary: getRepresentingInvariantLoadSCEV is already in the Scop class. Did you want to say changing its visibility to public?

Jul 25 2019, 8:30 AM · Restricted Project
Meinersbur requested changes to D65257: Describe resticted form of loops in the new loop terminogy documentation.
Jul 25 2019, 8:15 AM · Restricted Project

Jul 24 2019

Meinersbur requested changes to D61446: Generalize the pass registration mechanism used by Polly to any third-party tool.

Thank you for adding the Bye pass. It is really useful! Is there a specific reason to not modify the Hello pass?

Jul 24 2019, 1:54 PM · Restricted Project, Restricted Project
Meinersbur added a comment to D64916: [LV] Scalar Epilogue Lowering. NFC..

Just one comment from me.

@Meinersbur, you think your comments are addressed enough?

Jul 24 2019, 10:22 AM · Restricted Project
Meinersbur added a comment to D65197: [LV] Tail-loop Folding.

Just just realized that docs for llvm.loop.vectorize.predicate.enable is part of D64744, which otherwise is a clang-only patch.

Yep, indeed, so I assume that's all good.

Jul 24 2019, 6:35 AM · Restricted Project
Meinersbur added a comment to D65164: Define some basic terminology around loops in our documentation.

Thanks for taking the initiative.

Jul 24 2019, 6:23 AM · Restricted Project
Meinersbur added a comment to D65197: [LV] Tail-loop Folding.

Just just realized that docs for llvm.loop.vectorize.predicate.enable is part of D64744, which otherwise is a clang-only patch.

Jul 24 2019, 5:48 AM · Restricted Project
Meinersbur added a comment to D65197: [LV] Tail-loop Folding.

[serious] There is a LoopVectorizeHints class in LoopVectorizationLegality.cpp that should be used.

Jul 24 2019, 5:43 AM · Restricted Project

Jul 22 2019

Meinersbur added a comment to D64557: Add llvm.loop.licm.disable metadata.

@fhahn @arsenm @hfinkel Has the motivation question been sufficiently addressed?

Jul 22 2019, 12:07 PM · Restricted Project

Jul 19 2019

Meinersbur added a comment to D64744: #pragma clang loop vectorize_predicate(enable|disable).

I prefer having the documentation change to be in the same patch as the functional change. Makes it easier to check whether they match.

Jul 19 2019, 2:08 PM · Restricted Project

Jul 18 2019

Meinersbur added a comment to D64916: [LV] Scalar Epilogue Lowering. NFC..

Generally, the patch looks fine. I'd would prefer if someone who has contributed to VPlan to accept the patch.

Jul 18 2019, 10:24 AM · Restricted Project
Meinersbur added a comment to D64744: #pragma clang loop vectorize_predicate(enable|disable).

[serious] Need to update docs.

Jul 18 2019, 9:47 AM · Restricted Project

Jul 17 2019

Meinersbur accepted D63459: Loop Cache Analysis.

LGTM, some nitpicks left.

Jul 17 2019, 1:22 PM · Restricted Project
Meinersbur accepted D63844: [LoopFusion] Extend use of OptimizationRemarkEmitter.

LGTM

Jul 17 2019, 12:08 PM · Restricted Project
Meinersbur added a comment to D63885: [LOOPINFO] Introduce the loop guard API. .

So far, we have the following guarantees of a loop guard:

  1. If branching into the direction of the loop, the loop will be executed
  2. If branching to the other direction, the loop will not be executed.
  3. If branching to the other direction, no code will be executed that would not be executed if going to the direction of the loop.
  4. Loop guard and the post-dominating 'other' block form a Single-Entry-Single-Exit region. [edit: not true; there can be edges from the outside to a loop exit block]
Jul 17 2019, 12:06 PM · Restricted Project
Meinersbur accepted D64088: [DDG] DirectedGraph as a base class for various dependence graphs such as DDG and PDG..

LGTM

Jul 17 2019, 8:55 AM · Restricted Project

Jul 15 2019

Meinersbur accepted D63572: [Polly][NFC][ScopBuilder] Move addRecordedAssumption to ScopBuilder.

LGTM

Jul 15 2019, 4:44 PM · Restricted Project
Meinersbur added inline comments to D63885: [LOOPINFO] Introduce the loop guard API. .
Jul 15 2019, 12:15 PM · Restricted Project
Meinersbur added inline comments to D63885: [LOOPINFO] Introduce the loop guard API. .
Jul 15 2019, 11:52 AM · Restricted Project
Meinersbur added a comment to D64744: #pragma clang loop vectorize_predicate(enable|disable).

IMHO, this loops like an option of a particular transformation, not an independent pragma. E.g.

#pragma clang loop vectorize(enable) vectorize_remainder(predicated)

There could be multiple choices for how to execute remainder iterations, e.g. instead of an epilogue, the first iterations could be executed in an prologue. Or an option where the compiler may assume that the iteration-count is always a multiple of the vector width, etc.

Jul 15 2019, 11:33 AM · Restricted Project

Jul 12 2019

Meinersbur accepted D64088: [DDG] DirectedGraph as a base class for various dependence graphs such as DDG and PDG..

LGTM

Jul 12 2019, 1:13 PM · Restricted Project

Jul 11 2019

Meinersbur added inline comments to D63885: [LOOPINFO] Introduce the loop guard API. .
Jul 11 2019, 1:04 PM · Restricted Project
Meinersbur added inline comments to D63572: [Polly][NFC][ScopBuilder] Move addRecordedAssumption to ScopBuilder.
Jul 11 2019, 10:05 AM · Restricted Project
Meinersbur added inline comments to D64564: Loop pragma parsing. NFC..
Jul 11 2019, 9:44 AM · Restricted Project
Meinersbur added inline comments to D64557: Add llvm.loop.licm.disable metadata.
Jul 11 2019, 9:20 AM · Restricted Project
Meinersbur added inline comments to D63885: [LOOPINFO] Introduce the loop guard API. .
Jul 11 2019, 8:50 AM · Restricted Project

Jul 10 2019

Meinersbur added a comment to D64088: [DDG] DirectedGraph as a base class for various dependence graphs such as DDG and PDG..

To not to be stuck in details and not block the dependence graph patches, we maybe should land the patch and work on it in-tree when its users materialize?

Jul 10 2019, 3:08 PM · Restricted Project
Meinersbur added inline comments to D64088: [DDG] DirectedGraph as a base class for various dependence graphs such as DDG and PDG..
Jul 10 2019, 2:30 PM · Restricted Project
Meinersbur requested changes to D61446: Generalize the pass registration mechanism used by Polly to any third-party tool.

Windows seems to work. Good job!

Jul 10 2019, 2:08 PM · Restricted Project, Restricted Project
Meinersbur accepted D63572: [Polly][NFC][ScopBuilder] Move addRecordedAssumption to ScopBuilder.

LGTM

Jul 10 2019, 10:49 AM · Restricted Project

Jul 9 2019

Meinersbur added inline comments to D63844: [LoopFusion] Extend use of OptimizationRemarkEmitter.
Jul 9 2019, 4:33 PM · Restricted Project
Meinersbur added a comment to D64088: [DDG] DirectedGraph as a base class for various dependence graphs such as DDG and PDG..

To reduce the number of allocations, have you thought about making EdgeList contain the edges objects instead of pointers? The edges would have to be copied/moved into the list and edges could not be compared by identity. Is this semantic needed/are edge objects large?

Since the edge class does not contain the source node, the same edge object could be put into multiple outgoing edges lists. Is this supported?

I think we would be better off using pointers in this case, because of the following reasons:

  1. Using pointers gives the clients freedom to use polymorphic behavior.
Jul 9 2019, 3:40 PM · Restricted Project
Meinersbur accepted D63693: [Polly][NFC][ScopBuilder] Move buildAliasChecks and its implementing methods to ScopBuilder.

LGTM! Many thanks!

Jul 9 2019, 12:01 PM · Restricted Project
Meinersbur added inline comments to D63885: [LOOPINFO] Introduce the loop guard API. .
Jul 9 2019, 11:40 AM · Restricted Project
Meinersbur added inline comments to D63459: Loop Cache Analysis.
Jul 9 2019, 11:24 AM · Restricted Project

Jul 8 2019

Meinersbur added inline comments to D63885: [LOOPINFO] Introduce the loop guard API. .
Jul 8 2019, 6:14 PM · Restricted Project
Meinersbur added a comment to D63459: Loop Cache Analysis.

@fhahn Do you still want to look over this patch?

Jul 8 2019, 5:08 PM · Restricted Project
Meinersbur added a comment to D64359: [LOOPINFO] Add member function to retrieve loops in breadth-first order.

What's the intended use?

Jul 8 2019, 3:25 PM · Restricted Project
Meinersbur added a comment to D64088: [DDG] DirectedGraph as a base class for various dependence graphs such as DDG and PDG..

To reduce the number of allocations, have you thought about making EdgeList contain the edges objects instead of pointers? The edges would have to be copied/moved into the list and edges could not be compared by identity. Is this semantic needed/are edge objects large?

Jul 8 2019, 3:20 PM · Restricted Project
Meinersbur accepted D64223: [Polly][NFC][ScopBuilder] Move buildSchedule and its callees to ScopBuilder or ScopHelper.

LGTM

Jul 8 2019, 2:20 PM · Restricted Project
Meinersbur accepted D63794: [Polly][NFC][ScopBuilder] Move finalizeAccesses and its callees to ScopBuilder.

I think you are ready to get commit access, if you like. Could you follow https://llvm.org/docs/DeveloperPolicy.html#obtaining-commit-access? Send him some links to commits that I committed for you.
Note that there is a move to GitHub pending (end of this year, as far as I remember), which may require another procedure (SVN Username+Pwd hash do not directly translate to GitHub accounts).

Jul 8 2019, 2:17 PM · Restricted Project
Meinersbur added a comment to D64355: [docs][Remarks] Add documentation for remarks in LLVM.

Thank your for working on the documentation!

Jul 8 2019, 11:27 AM · Restricted Project

Jun 26 2019

Meinersbur added inline comments to D63304: Ignore Singletons in statement domains.
Jun 26 2019, 2:44 PM · Restricted Project, Restricted Project
Meinersbur added inline comments to D63305: Propagate Trip count Assumptions to runtime check.
Jun 26 2019, 1:25 PM · Restricted Project, Restricted Project
Meinersbur added inline comments to D63304: Ignore Singletons in statement domains.
Jun 26 2019, 1:25 PM · Restricted Project, Restricted Project
Meinersbur added a comment to D63304: Ignore Singletons in statement domains.

Thank you for applying most of my suggestions.

Jun 26 2019, 1:18 PM · Restricted Project, Restricted Project
Meinersbur added inline comments to D61446: Generalize the pass registration mechanism used by Polly to any third-party tool.
Jun 26 2019, 5:32 AM · Restricted Project, Restricted Project
Meinersbur added a comment to D63794: [Polly][NFC][ScopBuilder] Move finalizeAccesses and its callees to ScopBuilder.

Could you clarify the title to make clear that it moves more than just the finalizeAccesses method, such as "Move finalizeAccesses and its callees to ScopBuilder"?

Jun 26 2019, 1:10 AM · Restricted Project
Meinersbur accepted D63740: [Polly][NFC][ScopBuilder] Move addUserContext to ScopBuilder.

Can I commit this patch for you?

Jun 26 2019, 12:29 AM · Restricted Project
Meinersbur added a comment to D63693: [Polly][NFC][ScopBuilder] Move buildAliasChecks and its implementing methods to ScopBuilder.

Please let me know if such big patch is acceptable. I have moved all functions referenced only by buildAliasChecks function to ScopBuilder class.

Jun 26 2019, 12:27 AM · Restricted Project

Jun 25 2019

Meinersbur added a comment to D63572: [Polly][NFC][ScopBuilder] Move addRecordedAssumption to ScopBuilder.

[suggestion] RecordedAssumptions itself is only used during SCoP constructions (since it's empty once the SCoP is full constructed). It could be removed entirely into ScopBuilder, maybe in a future patch?

Jun 25 2019, 11:55 PM · Restricted Project
Meinersbur accepted D63446: Expand cloneLoopWithPreheader() to support cloning loop nest.

LGTM

Jun 25 2019, 3:54 AM · Restricted Project

Jun 18 2019

Meinersbur added a comment to D63459: Loop Cache Analysis.

How would a pass use this analysis? It computes a cost for the current IR, but there is nothing to compare it to unless the transformation pass emits the transformed loop nest next to the original pass such that the LoopCacheAnalysis can compute its cost.

Jun 18 2019, 3:31 PM · Restricted Project
Meinersbur added inline comments to D63305: Propagate Trip count Assumptions to runtime check.
Jun 18 2019, 1:00 PM · Restricted Project, Restricted Project

Jun 17 2019

Meinersbur added a comment to D63459: Loop Cache Analysis.

What do you plan as the first use of this transformation?

Jun 17 2019, 4:52 PM · Restricted Project
Meinersbur added inline comments to D63446: Expand cloneLoopWithPreheader() to support cloning loop nest.
Jun 17 2019, 12:36 PM · Restricted Project
Meinersbur committed rG88afd7530084: [test] Add wrap flags after D61934. (authored by Meinersbur).
[test] Add wrap flags after D61934.
Jun 17 2019, 12:16 PM
Meinersbur committed rG77bc3b65424a: [ScopInliner] Register FunctionAnalysisManagerModuleProxy. (authored by Meinersbur).
[ScopInliner] Register FunctionAnalysisManagerModuleProxy.
Jun 17 2019, 9:00 AM
Meinersbur committed rL363572: [ScopInliner] Register FunctionAnalysisManagerModuleProxy..
[ScopInliner] Register FunctionAnalysisManagerModuleProxy.
Jun 17 2019, 9:00 AM

Jun 14 2019

Meinersbur accepted D63338: PHINode: introduce setIncomingValueForBlock() function, and use it..

LGTM, please wait for @fhahn's ok as well.

Jun 14 2019, 1:31 PM · Restricted Project
Meinersbur added a comment to D63304: Ignore Singletons in statement domains.

You can detect this simple loop domain directly by using quering "is_singleton" but with nested loops you'll need to project out to find singletons in one dimension out of all the loop nest dimensions.

Jun 14 2019, 1:16 PM · Restricted Project, Restricted Project

Jun 13 2019

Meinersbur added inline comments to D63305: Propagate Trip count Assumptions to runtime check.
Jun 13 2019, 5:59 PM · Restricted Project, Restricted Project
Meinersbur added a comment to D63304: Ignore Singletons in statement domains.

Thanks for the patch. Do you happen to have performance, code size numbers?

Jun 13 2019, 5:44 PM · Restricted Project, Restricted Project

Jun 12 2019

Meinersbur committed rG189abad12867: [ScopBuilder] Move addInvariantLoads to ScopBuilder. NFC. (authored by Meinersbur).
[ScopBuilder] Move addInvariantLoads to ScopBuilder. NFC.
Jun 12 2019, 3:49 PM
Meinersbur committed rL363216: [ScopBuilder] Move addInvariantLoads to ScopBuilder. NFC..
[ScopBuilder] Move addInvariantLoads to ScopBuilder. NFC.
Jun 12 2019, 3:48 PM
Meinersbur closed D63172: [Polly][NFC][ScopBuilder] Move addInvariantLoads to ScopBuilder.
Jun 12 2019, 3:48 PM · Restricted Project
Meinersbur committed rGbb824c61a904: [ScopBuilder] Move getNonHoistableCtx to ScopBuilder. NFC. (authored by Meinersbur).
[ScopBuilder] Move getNonHoistableCtx to ScopBuilder. NFC.
Jun 12 2019, 3:40 PM
Meinersbur committed rL363214: [ScopBuilder] Move getNonHoistableCtx to ScopBuilder. NFC..
[ScopBuilder] Move getNonHoistableCtx to ScopBuilder. NFC.
Jun 12 2019, 3:37 PM
Meinersbur closed D63066: [Polly][NFC][ScopBuilder] Move getNonHoistableCtx to ScopBuilder.
Jun 12 2019, 3:37 PM · Restricted Project

Jun 11 2019

Meinersbur committed rG549991e48c62: [ScopBuilder] Move hoistInvariantLoads to ScopBuilder. NFC. (authored by Meinersbur).
[ScopBuilder] Move hoistInvariantLoads to ScopBuilder. NFC.
Jun 11 2019, 9:21 PM
Meinersbur committed rL363121: [ScopBuilder] Move hoistInvariantLoads to ScopBuilder. NFC..
[ScopBuilder] Move hoistInvariantLoads to ScopBuilder. NFC.
Jun 11 2019, 9:20 PM
Meinersbur closed D62925: [Polly][NFC][ScopBuilder] Move hoistInvariantLoads to ScopBuilder.
Jun 11 2019, 9:20 PM · Restricted Project
Meinersbur accepted D63172: [Polly][NFC][ScopBuilder] Move addInvariantLoads to ScopBuilder.

LGTM apart from the nitpicks.

Jun 11 2019, 9:10 PM · Restricted Project
Meinersbur accepted D63066: [Polly][NFC][ScopBuilder] Move getNonHoistableCtx to ScopBuilder.

LGTM and thank you!

Jun 11 2019, 4:22 PM · Restricted Project
Meinersbur accepted D62607: LoopDistribute/LAA: Respect convergent.

LGTM. Thank you.

Jun 11 2019, 4:22 PM
Meinersbur accepted D63035: LoopDistribute/LAA: Add tests to catch regressions.
Jun 11 2019, 4:02 PM