Subversion Repositories QNX 8.QNX8 LLVM/Clang compiler suite

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. //===------ IslOstream.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. // raw_ostream printers for isl C++ objects.
  10. //
  11. //===----------------------------------------------------------------------===//
  12.  
  13. #include "polly/Support/GICHelper.h"
  14. #include "llvm/Support/raw_ostream.h"
  15. #include "isl/isl-noexceptions.h"
  16. namespace polly {
  17.  
  18. #define ADD_OSTREAM_PRINTER(name)                                              \
  19.   inline llvm::raw_ostream &operator<<(llvm::raw_ostream &OS,                  \
  20.                                        const name &Obj) {                      \
  21.     OS << stringFromIslObj(Obj);                                               \
  22.     return OS;                                                                 \
  23.   }
  24.  
  25. ADD_OSTREAM_PRINTER(isl::aff)
  26. ADD_OSTREAM_PRINTER(isl::ast_expr)
  27. ADD_OSTREAM_PRINTER(isl::ast_node)
  28. ADD_OSTREAM_PRINTER(isl::basic_map)
  29. ADD_OSTREAM_PRINTER(isl::basic_set)
  30. ADD_OSTREAM_PRINTER(isl::map)
  31. ADD_OSTREAM_PRINTER(isl::set)
  32. ADD_OSTREAM_PRINTER(isl::id)
  33. ADD_OSTREAM_PRINTER(isl::multi_aff)
  34. ADD_OSTREAM_PRINTER(isl::multi_pw_aff)
  35. ADD_OSTREAM_PRINTER(isl::multi_union_pw_aff)
  36. ADD_OSTREAM_PRINTER(isl::point)
  37. ADD_OSTREAM_PRINTER(isl::pw_aff)
  38. ADD_OSTREAM_PRINTER(isl::pw_multi_aff)
  39. ADD_OSTREAM_PRINTER(isl::schedule)
  40. ADD_OSTREAM_PRINTER(isl::schedule_node)
  41. ADD_OSTREAM_PRINTER(isl::space)
  42. ADD_OSTREAM_PRINTER(isl::union_access_info)
  43. ADD_OSTREAM_PRINTER(isl::union_flow)
  44. ADD_OSTREAM_PRINTER(isl::union_set)
  45. ADD_OSTREAM_PRINTER(isl::union_map)
  46. ADD_OSTREAM_PRINTER(isl::union_pw_aff)
  47. ADD_OSTREAM_PRINTER(isl::union_pw_multi_aff)
  48. } // namespace polly
  49.