[Bug debug/55257] [4.8 Regression]: g++.dg/debug/dwarf2/non-virtual-thunk.C scan-assembler thunk.C:30
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55257 Hans-Peter Nilsson hp at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed||2012-11-12 AssignedTo|unassigned at gcc dot |hp at gcc dot gnu.org |gnu.org | Target Milestone|--- |4.8.0 Ever Confirmed|0 |1 --- Comment #2 from Hans-Peter Nilsson hp at gcc dot gnu.org 2012-11-12 17:08:12 UTC --- (In reply to comment #1) If the target doesn't call final_start_function and final_end_function in output_mi_thunk targhook (or equivalent), it is a target bug. I see. I either missed this requirement when I implemented those bits for CRIS or it wasn't a requirement at the time. BTW, I see several ports are missing those calls. I guess in the general case it can't be left to middle-end to call those functions at the right time, so I'll just update the port and hopefully the documentation, but no promises. Assigning the PR to myself while verifying that this is the cause.
[Bug debug/55257] [4.8 Regression]: g++.dg/debug/dwarf2/non-virtual-thunk.C scan-assembler thunk.C:30
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55257 --- Comment #3 from Jakub Jelinek jakub at gcc dot gnu.org 2012-11-12 17:14:41 UTC --- It is a requirement if you want proper debug info or unwind info for the thunk, without that (or without calling the corresponding functions yourself, which is harder to maintain) you don't get proper debug info. It can't be called from the middle end, because some targets need to perform various things before final_start_function (or perhaps after final_end_function).
[Bug debug/55257] [4.8 Regression]: g++.dg/debug/dwarf2/non-virtual-thunk.C scan-assembler thunk.C:30
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55257 --- Comment #4 from Hans-Peter Nilsson hp at gcc dot gnu.org 2012-11-12 17:21:57 UTC --- (In reply to comment #3) It can't be called from the middle end, because some targets need to perform various things before final_start_function (or perhaps after final_end_function). Yes, that's what I meant, so let's just document the requirement.
[Bug debug/55257] [4.8 Regression]: g++.dg/debug/dwarf2/non-virtual-thunk.C scan-assembler thunk.C:30
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55257 --- Comment #1 from Jakub Jelinek jakub at gcc dot gnu.org 2012-11-12 07:51:26 UTC --- If the target doesn't call final_start_function and final_end_function in output_mi_thunk targhook (or equivalent), it is a target bug.