[all-commits] [llvm/llvm-project] 729610: [Coroutines][5/6] Add coroutine passes to pipeline

Brian Gesiak via All-commits all-commits at lists.llvm.org
Tue Feb 18 22:01:33 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 72961071f35a7da7e67ee3c6056b19900e8f28cc
      https://github.com/llvm/llvm-project/commit/72961071f35a7da7e67ee3c6056b19900e8f28cc
  Author: Brian Gesiak <modocache at gmail.com>
  Date:   2020-02-19 (Wed, 19 Feb 2020)

  Changed paths:
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/test/Transforms/Coroutines/ArgAddr.ll
    M llvm/test/Transforms/Coroutines/coro-cleanup.ll
    M llvm/test/Transforms/Coroutines/coro-split-01.ll
    M llvm/test/Transforms/Coroutines/ex0.ll
    M llvm/test/Transforms/Coroutines/ex1.ll
    M llvm/test/Transforms/Coroutines/ex2.ll
    M llvm/test/Transforms/Coroutines/ex3.ll
    M llvm/test/Transforms/Coroutines/ex4.ll
    M llvm/test/Transforms/Coroutines/ex5.ll
    M llvm/test/Transforms/Coroutines/phi-coro-end.ll
    M llvm/test/Transforms/Coroutines/restart-trigger.ll
    M llvm/test/Transforms/Coroutines/smoketest.ll
    M llvm/tools/opt/NewPMDriver.cpp
    M llvm/tools/opt/NewPMDriver.h
    M llvm/tools/opt/opt.cpp

  Log Message:
  -----------
  [Coroutines][5/6] Add coroutine passes to pipeline

Summary:
Depends on https://reviews.llvm.org/D71901.

The fifth in a series of patches that ports the LLVM coroutines passes
to the new pass manager infrastructure.

The first 4 patches allow users to run coroutine passes by invoking, for
example `opt -passes=coro-early`. However, most of LLVM's tests for
coroutines use an option, `opt -enable-coroutines`, which adds all 4
coroutine passes to the appropriate legacy pass manager extension points.
This patch does the same, but using the new pass manager: when
coroutine features are enabled and the new pass manager is being used,
this adds the new-pass-manager-compliant coroutine passes to the pass
builder's pipeline.

This allows us to run all coroutine tests using the new pass manager
(besides those that use the coroutine retcon ABI used by the Swift
compiler, which is not yet supported in the new pass manager).

Reviewers: GorNishanov, lewissbaker, chandlerc, junparser, wenlei

Subscribers: wenlei, EricWF, Prazek, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D71902




More information about the All-commits mailing list