Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-10 08:48:20

0001 //===------ FlattenSchedule.h ----------------------------------*- C++ -*-===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 //
0009 // Try to reduce the number of scatter dimension. Useful to make isl_union_map
0010 // schedules more understandable. This is only intended for debugging and
0011 // unittests, not for optimizations themselves.
0012 //
0013 //===----------------------------------------------------------------------===//
0014 
0015 #ifndef POLLY_FLATTENSCHEDULE_H
0016 #define POLLY_FLATTENSCHEDULE_H
0017 
0018 namespace llvm {
0019 class PassRegistry;
0020 class Pass;
0021 class raw_ostream;
0022 } // namespace llvm
0023 
0024 namespace polly {
0025 llvm::Pass *createFlattenSchedulePass();
0026 llvm::Pass *createFlattenSchedulePrinterLegacyPass(llvm::raw_ostream &OS);
0027 } // namespace polly
0028 
0029 namespace llvm {
0030 void initializeFlattenSchedulePass(llvm::PassRegistry &);
0031 void initializeFlattenSchedulePrinterLegacyPassPass(llvm::PassRegistry &);
0032 } // namespace llvm
0033 
0034 #endif /* POLLY_FLATTENSCHEDULE_H */