1 | /* Various declarations for language-independent pretty-print |
2 | subroutines that are only for use in the compilers proper and not |
3 | the driver or other programs. |
4 | Copyright (C) 2002-2023 Free Software Foundation, Inc. |
5 | |
6 | This file is part of GCC. |
7 | |
8 | GCC is free software; you can redistribute it and/or modify it under |
9 | the terms of the GNU General Public License as published by the Free |
10 | Software Foundation; either version 3, or (at your option) any later |
11 | version. |
12 | |
13 | GCC is distributed in the hope that it will be useful, but WITHOUT ANY |
14 | WARRANTY; without even the implied warranty of MERCHANTABILITY or |
15 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
16 | for more details. |
17 | |
18 | You should have received a copy of the GNU General Public License |
19 | along with GCC; see the file COPYING3. If not see |
20 | <http://www.gnu.org/licenses/>. */ |
21 | |
22 | #ifndef GCC_TREE_PRETTY_PRINT_H |
23 | #define GCC_TREE_PRETTY_PRINT_H |
24 | |
25 | #include "pretty-print.h" |
26 | |
27 | #define pp_unsupported_tree(PP, T) \ |
28 | pp_verbatim (PP, "%qs not supported by %s", \ |
29 | get_tree_code_name (TREE_CODE (T)), __FUNCTION__) |
30 | |
31 | #define pp_ti_abstract_origin(TI) ((tree *) (TI)->m_data) |
32 | |
33 | |
34 | extern void debug_generic_expr (tree); |
35 | extern void debug_generic_stmt (tree); |
36 | extern void debug_tree_chain (tree); |
37 | extern void print_generic_decl (FILE *, tree, dump_flags_t); |
38 | extern void print_generic_stmt (FILE *, tree, dump_flags_t = TDF_NONE); |
39 | extern void print_generic_stmt_indented (FILE *, tree, dump_flags_t, int); |
40 | extern void print_generic_expr (FILE *, tree, dump_flags_t = TDF_NONE); |
41 | extern char *print_generic_expr_to_str (tree); |
42 | extern void dump_omp_clauses (pretty_printer *, tree, int, dump_flags_t, |
43 | bool = true); |
44 | extern void dump_omp_atomic_memory_order (pretty_printer *, |
45 | enum omp_memory_order); |
46 | extern void dump_omp_loop_non_rect_expr (pretty_printer *, tree, int, |
47 | dump_flags_t); |
48 | extern int dump_generic_node (pretty_printer *, tree, int, dump_flags_t, bool); |
49 | extern void print_declaration (pretty_printer *, tree, int, dump_flags_t); |
50 | extern int op_code_prio (enum tree_code); |
51 | extern int op_prio (const_tree); |
52 | extern const char *op_symbol_code (enum tree_code, dump_flags_t = TDF_NONE); |
53 | extern void pretty_print_string (pretty_printer *, const char *, size_t); |
54 | extern void print_call_name (pretty_printer *, tree, dump_flags_t); |
55 | extern void pp_tree_identifier (pretty_printer *, tree); |
56 | extern void (FILE *, tree, dump_flags_t); |
57 | extern void pp_double_int (pretty_printer *pp, double_int d, bool uns); |
58 | extern void dump_location (pretty_printer *buffer, location_t loc); |
59 | |
60 | #endif /* ! GCC_TREE_PRETTY_PRINT_H */ |
61 | |