[Bug c++/22003] [4.1 Regression] -freorder-blocks-and-partition and thunks
steven at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Wed Jul 27 00:01:00 GMT 2005
------- Additional Comments From steven at gcc dot gnu dot org 2005-07-27 00:01 -------
The problem with the missing CFG is in method.c:use_thunk()
We go through the RTL path without lowering the thunk:
===============================================
if (this_adjusting
&& targetm.asm_out.can_output_mi_thunk (thunk_fndecl, fixed_offset,
virtual_value, alias))
{
const char *fnname;
current_function_decl = thunk_fndecl;
DECL_RESULT (thunk_fndecl)
= build_decl (RESULT_DECL, 0, integer_type_node);
fnname = XSTR (XEXP (DECL_RTL (thunk_fndecl), 0), 0);
init_function_start (thunk_fndecl);
current_function_is_thunk = 1;
assemble_start_function (thunk_fndecl, fnname);
targetm.asm_out.output_mi_thunk (asm_out_file, thunk_fndecl,
fixed_offset, virtual_value, alias);
assemble_end_function (thunk_fndecl, fnname);
current_function_decl = 0;
cfun = 0;
TREE_ASM_WRITTEN (thunk_fndecl) = 1;
}
===============================================
Honza, your thoughts please.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |hubicka at gcc dot gnu dot
| |org
Last reconfirmed|2005-06-10 21:02:16 |2005-07-27 00:01:09
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22003
More information about the Gcc-bugs
mailing list