Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[flang] de-duplicate AbstractResult pass #88867

Merged
merged 4 commits into from
Apr 22, 2024

Commits on Apr 16, 2024

  1. [flang] de-duplicate AbstractResult pass

    This is the first proof of concept of the modification of FIR lowering
    to fully support a variety of top level operations (beyond just
    func.func) proposed in
    https://discourse.llvm.org/t/rfc-add-an-interface-for-top-level-container-operations
    
    One unfortunate side-effect of this is that the new AbstractResult pass
    cannot be scheduled on a builtin.module operation and so we can't use
      fir-opt --abstract-result < file.fir
    
    I tried adding support for operating on a module to the pass, but this
    wasn't straightforward. Operating at module scope means that conversions
    added for return operations run on every return operation in the module
    rather than just in the current function and this violates assumptions
    in the pass: producing incorrect results. This doesn't effect normal
    operation because the pass manager will always run the pass on a
    specific top level operation not on a whole module. I have worked around
    this by specifying the pass pipeline more specifically in the tests.
    
    I expect most other passes will be able to keep their old fir-opt
    interface.
    tblah committed Apr 16, 2024
    Configuration menu
    Copy the full SHA
    d736b25 View commit details
    Browse the repository at this point in the history
  2. Use llvm::function_ref

    Co-authored-by: Markus Böck <markus.boeck02@gmail.com>
    tblah and zero9178 committed Apr 16, 2024
    Configuration menu
    Copy the full SHA
    d6210ea View commit details
    Browse the repository at this point in the history

Commits on Apr 19, 2024

  1. Configuration menu
    Copy the full SHA
    d699cf8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a8c2894 View commit details
    Browse the repository at this point in the history