]> git.ipfire.org Git - thirdparty/gcc.git/commit
dwarf2: Extract cfi creation to a new pass.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 8 Jul 2011 00:05:57 +0000 (00:05 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 8 Jul 2011 00:05:57 +0000 (00:05 +0000)
commitfe2dc6d6b33cd6601271d3c53c3b16674d39e11f
tree423b5bc61bca007f2d488d591b3421ca41386eaf
parent6033bf1158967debce9f2f2571d42586b4c97a67
dwarf2: Extract cfi creation to a new pass.

        * tree-pass.h (pass_dwarf2_frame): Declare.
        * passes.c (init_optimization_passes): Add it.
        * dwarf2cfi.c (dwarf2out_frame_debug): Make static.
        (create_cfi_notes): Rename from dwarf2out_frame_debug_after_prologue;
        make static, do not call add_cfis_to_fde.
        (dwarf2out_frame_debug_init, dwarf2cfi_function_init,
        dwarf2out_frame_init): Merge into...
        (execute_dwarf2_frame): ... here.  New function.
        (dwarf2out_do_frame, dwarf2out_do_cfi_asm): Make boolean.  Change
        saved_do_cfi_asm to a tri-state variable.
        (gate_dwarf2_frame, pass_dwarf2_frame): New.
        * dwarf2out.c (dwarf2out_begin_prologue): Only allocate the fde
        if it has yet to be done.  Don't call dwarf2cfi_function_init.
        * dwarf2out.h, debug.h: Update decls.
        * final.c (final_start_function): Don't call
        dwarf2out_frame_debug_init or dwarf2out_frame_debug_after_prologue.
        * lto-streamer-in.c (lto_init_eh): Don't call dwarf2out_frame_init.
        * toplev.c (lang_dependent_init): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176019 138bc75d-0d04-0410-961f-82ee72b054a4
12 files changed:
gcc/ChangeLog
gcc/ada/ChangeLog
gcc/ada/gcc-interface/misc.c
gcc/debug.h
gcc/dwarf2cfi.c
gcc/dwarf2out.c
gcc/dwarf2out.h
gcc/final.c
gcc/lto-streamer-in.c
gcc/passes.c
gcc/toplev.c
gcc/tree-pass.h