Commit 1aec401e by Jason Merrill Committed by Jason Merrill

tree-pretty-print.c (print_call_name): Take the callee, not the call itself.

	* tree-pretty-print.c (print_call_name): Take the callee, not the
	call itself.  Make non-static.  Use dump_function_name for
	functions.
	(dump_generic_node): Adjust.
	* diagnostic.h: Declare print_call_name.
	* gimple-pretty-print.c (dump_gimple_call): Use it.

From-SVN: r148019
parent ed7910bb
2009-05-31 Jason Merrill <jason@redhat.com>
* tree-pretty-print.c (print_call_name): Take the callee, not the
call itself. Make non-static. Use dump_function_name for
functions.
(dump_generic_node): Adjust.
* diagnostic.h: Declare print_call_name.
* gimple-pretty-print.c (dump_gimple_call): Use it.
2009-05-31 Kaz Kojima <kkojima@gcc.gnu.org> 2009-05-31 Kaz Kojima <kkojima@gcc.gnu.org>
* config/sh/sh.md (ashldi3_std): New define_expand. * config/sh/sh.md (ashldi3_std): New define_expand.
......
...@@ -226,6 +226,7 @@ extern void print_generic_expr (FILE *, tree, int); ...@@ -226,6 +226,7 @@ extern void print_generic_expr (FILE *, tree, int);
extern void print_generic_decl (FILE *, tree, int); extern void print_generic_decl (FILE *, tree, int);
extern void debug_c_tree (tree); extern void debug_c_tree (tree);
extern void dump_omp_clauses (pretty_printer *, tree, int, int); extern void dump_omp_clauses (pretty_printer *, tree, int, int);
extern void print_call_name (pretty_printer *, tree);
/* In gimple-pretty-print.c */ /* In gimple-pretty-print.c */
extern void debug_generic_expr (tree); extern void debug_generic_expr (tree);
......
...@@ -508,7 +508,7 @@ dump_gimple_call (pretty_printer *buffer, gimple gs, int spc, int flags) ...@@ -508,7 +508,7 @@ dump_gimple_call (pretty_printer *buffer, gimple gs, int spc, int flags)
pp_space (buffer); pp_space (buffer);
} }
dump_generic_node (buffer, gimple_call_fn (gs), spc, flags, false); print_call_name (buffer, gimple_call_fn (gs));
pp_string (buffer, " ("); pp_string (buffer, " (");
dump_gimple_call_args (buffer, gs, flags); dump_gimple_call_args (buffer, gs, flags);
pp_character (buffer, ')'); pp_character (buffer, ')');
......
...@@ -40,7 +40,6 @@ along with GCC; see the file COPYING3. If not see ...@@ -40,7 +40,6 @@ along with GCC; see the file COPYING3. If not see
/* Local functions, macros and variables. */ /* Local functions, macros and variables. */
static const char *op_symbol (const_tree); static const char *op_symbol (const_tree);
static void pretty_print_string (pretty_printer *, const char*); static void pretty_print_string (pretty_printer *, const char*);
static void print_call_name (pretty_printer *, const_tree);
static void newline_and_indent (pretty_printer *, int); static void newline_and_indent (pretty_printer *, int);
static void maybe_init_pretty_print (FILE *); static void maybe_init_pretty_print (FILE *);
static void print_struct_decl (pretty_printer *, const_tree, int, int); static void print_struct_decl (pretty_printer *, const_tree, int, int);
...@@ -1329,7 +1328,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags, ...@@ -1329,7 +1328,7 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags,
break; break;
case CALL_EXPR: case CALL_EXPR:
print_call_name (buffer, node); print_call_name (buffer, CALL_EXPR_FN (node));
/* Print parameters. */ /* Print parameters. */
pp_space (buffer); pp_space (buffer);
...@@ -2662,32 +2661,31 @@ op_symbol (const_tree op) ...@@ -2662,32 +2661,31 @@ op_symbol (const_tree op)
return op_symbol_code (TREE_CODE (op)); return op_symbol_code (TREE_CODE (op));
} }
/* Prints the name of a CALL_EXPR. */ /* Prints the name of a call. NODE is the CALL_EXPR_FN of a CALL_EXPR or
the gimple_call_fn of a GIMPLE_CALL. */
static void void
print_call_name (pretty_printer *buffer, const_tree node) print_call_name (pretty_printer *buffer, tree node)
{ {
tree op0; tree op0 = node;
gcc_assert (TREE_CODE (node) == CALL_EXPR);
op0 = CALL_EXPR_FN (node);
if (TREE_CODE (op0) == NON_LVALUE_EXPR) if (TREE_CODE (op0) == NON_LVALUE_EXPR)
op0 = TREE_OPERAND (op0, 0); op0 = TREE_OPERAND (op0, 0);
again:
switch (TREE_CODE (op0)) switch (TREE_CODE (op0))
{ {
case VAR_DECL: case VAR_DECL:
case PARM_DECL: case PARM_DECL:
case FUNCTION_DECL:
dump_function_name (buffer, op0); dump_function_name (buffer, op0);
break; break;
case ADDR_EXPR: case ADDR_EXPR:
case INDIRECT_REF: case INDIRECT_REF:
case NOP_EXPR: case NOP_EXPR:
dump_generic_node (buffer, TREE_OPERAND (op0, 0), 0, 0, false); op0 = TREE_OPERAND (op0, 0);
break; goto again;
case COND_EXPR: case COND_EXPR:
pp_string (buffer, "("); pp_string (buffer, "(");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment