From 12b9247b19b8b634ec467ba8a3f506a4e7b76711 Mon Sep 17 00:00:00 2001 From: David Malcolm Date: Thu, 28 Mar 2019 14:40:56 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 6 ++++++ gcc/optinfo-emit-json.cc | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 50ed3df1757..741639daa12 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-03-28 David Malcolm + + 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 * regcprop.c (copyprop_hardreg_forward_1): Remove redundant INSN_P diff --git a/gcc/optinfo-emit-json.cc b/gcc/optinfo-emit-json.cc index 814446b2209..1cfcdfe8948 100644 --- a/gcc/optinfo-emit-json.cc +++ b/gcc/optinfo-emit-json.cc @@ -411,7 +411,8 @@ optrecord_json_writer::optinfo_to_json (const optinfo *optinfo) 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)); } -- 2.30.2