This is an archive of the discontinued LLVM Phabricator instance.

[flang] Add inliner pass.
ClosedPublic

Authored by schweitz on Jul 1 2020, 5:08 PM.

Details

Summary
This adds a minimalist inliner implementation. Along with the inliner, a
minimum number of support files are also included. These will pave the
way for future diffs to add more transformation passes to flang. A
future diff will add the inline test, which cannot be run successfully
quite yet as some components have not yet been upstreamed.

Diff Detail

Event Timeline

schweitz created this revision.Jul 1 2020, 5:08 PM
Herald added a project: Restricted Project. · View Herald Transcript
jeanPerier accepted this revision.Jul 2 2020, 1:21 AM
This revision is now accepted and ready to land.Jul 2 2020, 1:21 AM
mehdi_amini added inline comments.
flang/include/flang/Optimizer/Transforms/Passes.h
43

None of the above seem related to the inline to me?

flang/include/flang/Optimizer/Transforms/Passes.td
51

Here as well I don't understand how any of these is about inlining?

flang/lib/Optimizer/Transforms/Inliner.cpp
18

Ideally please favor "Pass options" instead of globals as much as possible (also keep in mind that global cl::opt are really for debugging)

(It seems like you didn't preserve the URL in the commit message which prevent Phabricator from linking to the revision)