source: icGREP/icgrep-devel/icgrep/pablo/printer_pablos.h @ 4811

Last change on this file since 4811 was 4788, checked in by nmedfort, 4 years ago

Misc changes + potential SIGBUS fix for issue reported by Hongpu.

File size: 1022 bytes
Line 
1/*
2 *  Copyright (c) 2014 International Characters.
3 *  This software is licensed to the public under the Open Software License 3.0.
4 *  icgrep is a trademark of International Characters.
5 */
6
7#ifndef SHOW_H
8#define SHOW_H
9
10#include <pablo/pabloAST.h>
11#include <pablo/ps_if.h>
12#include <string>
13
14namespace pablo { class PabloBlock; }
15
16namespace llvm { class raw_ostream; }
17
18class PabloPrinter {
19public:
20    using DefinedVars = pablo::If::DefinedVars;
21    static void print(const pablo::PabloBlock & block, llvm::raw_ostream & strm);
22    static void print(const pablo::StatementList & stmts, llvm::raw_ostream & strm);
23    static void print(const pablo::StatementList & stmts, std::string indent, llvm::raw_ostream & strm);
24    static void print_vars(const DefinedVars & vars, std::string indent, llvm::raw_ostream & strm);
25    static void print(const pablo::PabloAST * expr, llvm::raw_ostream & strm);
26    static void print(const pablo::Statement *stmt, std::string indent, llvm::raw_ostream & strm);
27};
28
29#endif // SHOW_H
Note: See TracBrowser for help on using the repository browser.