OSDN Git Service

PR rtl-optimization/34999
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 Jul 2009 23:30:39 +0000 (23:30 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 Jul 2009 23:30:39 +0000 (23:30 +0000)
commitd4915bebd7a4c23d4eaa22b87f0a1ad7a604fa87
tree4d7bffae2e9b3f41417d6614c1efbdadba7f1d91
parent15b7ca3a8bb57e90a0c0d6ae6c11b01fc53d828a
PR rtl-optimization/34999
* dwarf2out.c (struct dw_fde_struct): Add dw_fde_switch_cfi
and dw_fde_switched_cold_to_hot fields.
(output_cfi_p): New function.
(output_call_frame_info): If fde->dw_fde_switched_sections,
output 2 FDEs instead of one with corrupted header.
(dwarf2out_do_cfi_startproc): New function.
(dwarf2out_begin_prologue): Use it.  Initialize fde->dw_fde_switch_cfi
and fde->dw_fde_switched_cold_to_hot.
(dwarf2out_switch_text_section): Compute
fde->dw_fde_switched_cold_to_hot.  Switch to new text section here.
If dwarf2out_do_cfi_asm, emit .cfi_endproc before it and call
dwarf2out_do_cfi_startproc plus emit again currently active CFI insns.
Otherwise, compute fde->dw_fde_switch_cfi.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150069 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/dwarf2out.c