Home | History | Annotate | Line # | Download | only in Coroutines
      1 //===-- CoroCleanup.h - Lower all coroutine related intrinsics --*- C++ -*-===//
      2 //
      3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
      4 // See https://llvm.org/LICENSE.txt for license information.
      5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
      6 //
      7 //===----------------------------------------------------------------------===//
      8 //
      9 // \file
     10 // This file delcares a pass that lowers all remaining coroutine intrinsics.
     11 //
     12 //===----------------------------------------------------------------------===//
     13 
     14 #ifndef LLVM_TRANSFORMS_COROUTINES_COROCLEANUP_H
     15 #define LLVM_TRANSFORMS_COROUTINES_COROCLEANUP_H
     16 
     17 #include "llvm/IR/PassManager.h"
     18 
     19 namespace llvm {
     20 
     21 class Function;
     22 
     23 struct CoroCleanupPass : PassInfoMixin<CoroCleanupPass> {
     24   PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM);
     25   static bool isRequired() { return true; }
     26 };
     27 } // end namespace llvm
     28 
     29 #endif // LLVM_TRANSFORMS_COROUTINES_COROCLEANUP_H
     30