diff options
author | Richard Henderson <rth@redhat.com> | 2005-09-07 00:47:15 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2005-09-07 00:47:15 -0700 |
commit | 30e6f306d3ac23bcf9b1dec1cff32f6009aca913 (patch) | |
tree | 8185487e9f35c89d163198116ad501cfa5dad143 /gcc/defaults.h | |
parent | d1d26ecf9fa4f22c71353c650d85bf3b0fd3b1b5 (diff) | |
download | gcc-30e6f306d3ac23bcf9b1dec1cff32f6009aca913.zip gcc-30e6f306d3ac23bcf9b1dec1cff32f6009aca913.tar.gz gcc-30e6f306d3ac23bcf9b1dec1cff32f6009aca913.tar.bz2 |
function.c (ARG_POINTER_CFA_OFFSET): Move ...
* function.c (ARG_POINTER_CFA_OFFSET): Move ...
* defaults.h (ARG_POINTER_CFA_OFFSET): ... here.
(INCOMING_FRAME_SP_OFFSET): Move from dwarf2out.c.
* dwarf2out.c (struct cfa_loc): Change reg to unsigned int,
rearrange for better packing.
(INCOMING_FRAME_SP_OFFSET): Move to defaults.h.
(lookup_cfa_1): Remove inline marker.
(cfa_equal_p): Split out of ...
(def_cfa_1): ... here. Use INVALID_REGNUM.
(build_cfa_loc): Handle !cfa->indirect.
(frame_pointer_cfa_offset): New.
(dbx_reg_number): Assert register elimination performed; do
leaf register remapping.
(reg_loc_descriptor): Avoid calling dbx_reg_number when unused.
(eliminate_reg_to_offset): New.
(based_loc_descr): Remove can_use_fbreg argument. Use fbreg only
for verifiably local stack frame addresses; re-base to CFA.
(mem_loc_descriptor): Remove can_use_fbreg argument.
(concat_loc_descriptor, loc_descriptor): Likewise.
(containing_function_has_frame_base): Remove.
(rtl_for_decl_location): Don't do register elimination or
leaf register remapping here.
(secname_for_decl): Split out from ..
(add_location_or_const_value_attribute): ... here.
(convert_cfa_to_loc_list): New.
(compute_frame_pointer_to_cfa_displacement): New.
(gen_subprogram_die): Use them.
* tree.h (frame_base_decl): Remove.
* var-tracking.c (frame_base_decl, frame_stack_adjust): Remove.
(prologue_stack_adjust): Remove.
(vt_stack_adjustments): Use INCOMING_FRAME_SP_OFFSET.
(adjust_stack_reference): Re-base memories to arg_pointer_rtx.
(set_frame_base_location): Remove.
(compute_bb_dataflow, emit_notes_in_bb): Don't call it.
(dump_attrs_list, dump_dataflow_set): Use string concatenation.
(vt_add_function_parameters): Don't eliminate_regs.
(vt_initialize): Don't create frame_base_decl.
From-SVN: r103983
Diffstat (limited to 'gcc/defaults.h')
-rw-r--r-- | gcc/defaults.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/defaults.h b/gcc/defaults.h index af3e237..9ac1afc 100644 --- a/gcc/defaults.h +++ b/gcc/defaults.h @@ -835,4 +835,15 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA #define FRAME_GROWS_DOWNWARD 0 #endif +/* On most machines, the CFA coincides with the first incoming parm. */ +#ifndef ARG_POINTER_CFA_OFFSET +#define ARG_POINTER_CFA_OFFSET(FNDECL) FIRST_PARM_OFFSET (FNDECL) +#endif + +/* The offset from the incoming value of %sp to the top of the stack frame + for the current function. */ +#ifndef INCOMING_FRAME_SP_OFFSET +#define INCOMING_FRAME_SP_OFFSET 0 +#endif + #endif /* ! GCC_DEFAULTS_H */ |