This is an archive of the discontinued LLVM Phabricator instance.

[llvm][STLExtras] Move the algorithm `interleave*` methods from MLIR to LLVM
ClosedPublic

Authored by rriddle on Apr 13 2020, 5:26 PM.

Details

Summary

These have proved incredibly useful for interleaving values between a range w.r.t to streams. After this revision, the mlir/Support/STLExtras.h is empty. A followup revision will remove it from the tree.

Depends On D78064

Diff Detail

Event Timeline

rriddle created this revision.Apr 13 2020, 5:26 PM
lattner accepted this revision.Apr 13 2020, 5:49 PM

Awesome work!

flang/include/flang/Optimizer/Dialect/FIROps.td
251

How does this work?

This revision is now accepted and ready to land.Apr 13 2020, 5:49 PM
rriddle marked 2 inline comments as done.Apr 13 2020, 6:03 PM
rriddle added inline comments.
flang/include/flang/Optimizer/Dialect/FIROps.td
251

All of the value range types(ValueRange, OperandRange, ResultRange, etc.) have utility getTypes()/getType() methods that return a range of types for the held values. The OpAsmPrinter has operator<< overloads for value and type ranges, so there is generally no need to do this manually.

rriddle updated this revision to Diff 257447.Apr 14 2020, 12:28 PM
rriddle marked an inline comment as done.

Rebase

This revision was automatically updated to reflect the committed changes.