Commit 12b9247b by David Malcolm Committed by David Malcolm

optinfo-emit-json.cc: don't call get_fnname_from_decl (PR middle-end/89725)

optrecord_json_writer::optinfo_to_json can in theory be called from any
optimization pass, but currently uses get_fnname_from_decl, which
is RTL-specific.

In that PR, Jakub suggested using either DECL_ASSEMBLER_NAME or the
"printable name" (via current_function_name).

This patch makes it use DECL_ASSEMBLER_NAME.

gcc/ChangeLog:
	PR middle-end/89725
	* optinfo-emit-json.cc (optrecord_json_writer::optinfo_to_json):
	Use DECL_ASSEMBLER_NAME rather than get_fnname_from_decl.

From-SVN: r269994
parent cdd82c1e
2019-03-28 David Malcolm <dmalcolm@redhat.com>
PR middle-end/89725
* optinfo-emit-json.cc (optrecord_json_writer::optinfo_to_json):
Use DECL_ASSEMBLER_NAME rather than get_fnname_from_decl.
2019-03-28 Jakub Jelinek <jakub@redhat.com> 2019-03-28 Jakub Jelinek <jakub@redhat.com>
* regcprop.c (copyprop_hardreg_forward_1): Remove redundant INSN_P * regcprop.c (copyprop_hardreg_forward_1): Remove redundant INSN_P
......
...@@ -411,7 +411,8 @@ optrecord_json_writer::optinfo_to_json (const optinfo *optinfo) ...@@ -411,7 +411,8 @@ optrecord_json_writer::optinfo_to_json (const optinfo *optinfo)
if (current_function_decl) if (current_function_decl)
{ {
const char *fnname = get_fnname_from_decl (current_function_decl); const char *fnname
= IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (current_function_decl));
obj->set ("function", new json::string (fnname)); obj->set ("function", new json::string (fnname));
} }
......
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