FlattenSchedule.h 1006 B

12345678910111213141516171819202122232425262728293031
  1. //===------ FlattenSchedule.h ----------------------------------*- 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. // Try to reduce the number of scatter dimension. Useful to make isl_union_map
  10. // schedules more understandable. This is only intended for debugging and
  11. // unittests, not for optimizations themselves.
  12. //
  13. //===----------------------------------------------------------------------===//
  14. #ifndef POLLY_FLATTENSCHEDULE_H
  15. #define POLLY_FLATTENSCHEDULE_H
  16. namespace llvm {
  17. class PassRegistry;
  18. class Pass;
  19. } // namespace llvm
  20. namespace polly {
  21. llvm::Pass *createFlattenSchedulePass();
  22. } // namespace polly
  23. namespace llvm {
  24. void initializeFlattenSchedulePass(llvm::PassRegistry &);
  25. } // namespace llvm
  26. #endif /* POLLY_FLATTENSCHEDULE_H */