GCC Middle and Back End API Reference
|
Go to the source code of this file.
Data Structures | |
struct | gcc_debug_hooks |
Variables | |
struct gcc_debug_hooks * | debug_hooks |
struct gcc_debug_hooks | do_nothing_debug_hooks |
struct gcc_debug_hooks | dbx_debug_hooks |
struct gcc_debug_hooks | sdb_debug_hooks |
struct gcc_debug_hooks | xcoff_debug_hooks |
struct gcc_debug_hooks | dwarf2_debug_hooks |
struct gcc_debug_hooks | vmsdbg_debug_hooks |
void add_debug_prefix_map | ( | const char * | ) |
void debug_nothing_charstar | ( | const char * | ) |
void debug_nothing_int | ( | unsigned | int | ) |
void debug_nothing_int_charstar | ( | unsigned | int, |
const char * | |||
) |
Referenced by output_loc_sequence_raw().
void debug_nothing_int_charstar_int_bool | ( | unsigned | int, |
const char * | , | ||
int | , | ||
bool | |||
) |
void debug_nothing_int_int | ( | unsigned | int, |
unsigned | int | ||
) |
void debug_nothing_rtx | ( | rtx | ) |
void debug_nothing_tree | ( | tree | ) |
void debug_nothing_tree_int | ( | tree | , |
int | |||
) |
void debug_nothing_void | ( | void | ) |
The do-nothing hooks.
This file contains implementations of each debug hook that do nothing.
bool debug_true_const_tree | ( | const_tree | ) |
|
read |
For -fdump-go-spec.
void dwarf2out_begin_prologue | ( | unsigned int | line, |
const char * | file | ||
) |
Dwarf2 frame information.
Output a marker (i.e. a label) for the beginning of a function, before the prologue.
??? current_function_func_begin_label is also used by except.c for call-site information. We must emit this label if it might be used.
We can elide the fde allocation if we're not emitting debug info.
Cater to the various TARGET_ASM_OUTPUT_MI_THUNK implementations that emit insns as rtx but bypass the bulk of rest_of_compilation, which would include pass_dwarf2_frame. If we've not created the FDE yet, do so now.
Initialize the bits of CURRENT_FDE that were not available earlier.
We only want to output line number information for the genuine dwarf2 prologue case, not the eh frame case.
We cannot keep a current personality per function as without CFI asm, at the point where we emit the CFI data, there is no current function anymore.
Referenced by output_loc_sequence_raw().
bool dwarf2out_do_cfi_asm | ( | void | ) |
Decide whether to emit frame unwind via assembler directives.
Assume failure for a moment.
Make sure the personality encoding is one the assembler can support. In particular, aligned addresses can't be handled.
If we can't get the assembler to emit only .debug_frame, and we don't need dwarf2 unwind info for exceptions, then emit .debug_frame by hand.
Success!
Referenced by append_entry_to_tmpl_value_parm_die_table().
bool dwarf2out_do_frame | ( | void | ) |
Decide whether we want to emit frame unwind information for the current translation unit.
We want to emit correct CFA location expressions or lists, so we have to return true if we're going to output debug info, even if we're not going to output frame or unwind info.
void dwarf2out_end_epilogue | ( | unsigned int | line, |
const char * | file | ||
) |
Output a marker (i.e. a label) for the absolute end of the generated code for a function definition. This gets called *after* the epilogue code has been generated.
Output a label to mark the endpoint of the code generated for this function.
Referenced by output_loc_sequence_raw().
void dwarf2out_frame_finish | ( | void | ) |
Output call frame information.
Output another copy for the unwinder.
void dwarf2out_switch_text_section | ( | void | ) |
There is no need to mark used sections when not debugging.
Now do the real section switch.
Referenced by output_loc_sequence_raw().
void dwarf2out_vms_begin_epilogue | ( | unsigned int | line, |
const char * | file | ||
) |
Output a marker (i.e. a label) for the beginning of the generated code for a function epilogue. This gets called *before* the prologue code has been generated.
Output a label to mark the endpoint of the code generated for this function.
Referenced by output_loc_sequence_raw().
void dwarf2out_vms_end_prologue | ( | unsigned int | line, |
const char * | file | ||
) |
Output a marker (i.e. a label) for the end of the generated code for a function prologue. This gets called *after* the prologue code has been generated.
Output a label to mark the endpoint of the code generated for this function.
References targetm.
Referenced by output_loc_sequence_raw().
const char* remap_debug_filename | ( | const char * | ) |
Referenced by dbxout_typedefs().
struct gcc_debug_hooks dbx_debug_hooks |
struct gcc_debug_hooks* debug_hooks |
Referenced by cgraph_finalize_function(), crash_signal(), and final_scan_insn().
struct gcc_debug_hooks do_nothing_debug_hooks |
Hooks for various debug formats.
Do-nothing debug hooks for GCC. Copyright (C) 2001-2013 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.
The do-nothing debug hooks.
struct gcc_debug_hooks dwarf2_debug_hooks |
The debug hooks structure.
Referenced by vmsdbgout_begin_epilogue(), vmsdbgout_begin_prologue(), vmsdbgout_end_source_file(), vmsdbgout_init(), and vmsdbgout_start_source_file().
struct gcc_debug_hooks sdb_debug_hooks |
The debug hooks structure.
struct gcc_debug_hooks vmsdbg_debug_hooks |
The debug hooks structure.
struct gcc_debug_hooks xcoff_debug_hooks |