diff options
author | Jan Hubicka <jh@suse.cz> | 2008-04-08 01:52:32 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2008-04-07 23:52:32 +0000 |
commit | 3e0297630411f86aeb2d559cd4b379fec46a4654 (patch) | |
tree | 4160eb6c77f2042142a19b7b0d431545c848a42b /gcc/function.h | |
parent | 47583040f760ccfa6948622033a4835c8b747c5a (diff) | |
download | gcc-3e0297630411f86aeb2d559cd4b379fec46a4654.tar.gz |
function.h (rtl): Rename to x_rtl.
* function.h (rtl): Rename to x_rtl.
(crtl): New define.
(return_label, naked_return_label, stack_slot_list, parm_birth_insn,
frame_offset, stack_check_probe_note, arg_pointer_save_area,
used_temp_slots avail_temp_slots, temp_slot_level,
nonlocal_goto_handler_labels): Update accesstors.
(rtl): New global variable.
(struct function): Move some fileds to rtl_data.
(get_arg_pointer_save_area): Update prototype.
* builtins.c (expand_builtin_setjmp_receiver): Update call of
get_arg_pointer_save_area.
* expr.c (init_expr): Update
* function.c (get_frame_size): Update
(assign_stack_local): Update
(expand_function_end): Update.
(get_art_pointer_save_area): Update
* function.h
* emit-rtl.c (rtl): Declare.
(regno_reg_rtx): Declare.
(first_insn, last_insn, cur_insn_uid, last_location, first_label_num):
Update.
(gen_reg_rtx): Update.
* varasm.c (n_deferred_constatns): Update accestor.
(init_varasm_status): Do not allocate varasm_status.
(force_const_mem, get_pool_size, output_constant_pool): Update.
* stmt.c (force_label_rtx): Do not use x_ prefixes.
(expand_nl_goto_receiver): Update get_arg_pointer_save_area.
* m32c/m32.c (m32c_leaf_function_p, m32c_function_needs_enter): Update.
* sparc/sparc.h (INIT_EXPANDERS): Update.
* ia64/ia64.h (INIT_EXPANDERS): Update.
From-SVN: r133994
Diffstat (limited to 'gcc/function.h')
-rw-r--r-- | gcc/function.h | 53 |
1 files changed, 29 insertions, 24 deletions
diff --git a/gcc/function.h b/gcc/function.h index 6c95dcd1435..5c9d63f11fc 100644 --- a/gcc/function.h +++ b/gcc/function.h @@ -87,13 +87,13 @@ struct emit_status GTY(()) FIXME: We could put it into emit_status struct, but gengtype is not able to deal with length attribute nested in top level structures. */ -extern GTY ((length ("rtl.emit.x_reg_rtx_no"))) rtx * regno_reg_rtx; +extern GTY ((length ("crtl->emit.x_reg_rtx_no"))) rtx * regno_reg_rtx; /* For backward compatibility... eventually these should all go away. */ -#define reg_rtx_no (rtl.emit.x_reg_rtx_no) -#define seq_stack (rtl.emit.sequence_stack) +#define reg_rtx_no (crtl->emit.x_reg_rtx_no) +#define seq_stack (crtl->emit.sequence_stack) -#define REGNO_POINTER_ALIGN(REGNO) (rtl.emit.regno_pointer_align[REGNO]) +#define REGNO_POINTER_ALIGN(REGNO) (crtl->emit.regno_pointer_align[REGNO]) struct expr_status GTY(()) { @@ -136,12 +136,12 @@ struct expr_status GTY(()) rtx x_forced_labels; }; -#define pending_stack_adjust (rtl.expr.x_pending_stack_adjust) -#define inhibit_defer_pop (rtl.expr.x_inhibit_defer_pop) -#define saveregs_value (rtl.expr.x_saveregs_value) -#define apply_args_value (rtl.expr.x_apply_args_value) -#define forced_labels (rtl.expr.x_forced_labels) -#define stack_pointer_delta (rtl.expr.x_stack_pointer_delta) +#define pending_stack_adjust (crtl->expr.x_pending_stack_adjust) +#define inhibit_defer_pop (crtl->expr.x_inhibit_defer_pop) +#define saveregs_value (crtl->expr.x_saveregs_value) +#define apply_args_value (crtl->expr.x_apply_args_value) +#define forced_labels (crtl->expr.x_forced_labels) +#define stack_pointer_delta (crtl->expr.x_stack_pointer_delta) struct gimple_df; struct temp_slot; @@ -193,7 +193,7 @@ struct rtl_data GTY(()) rtx x_naked_return_label; /* List (chain of EXPR_LISTs) of all stack slots in this function. - Made for the sake of unshare_all_rtl. */ + Made for the sake of unshare_all_crtl-> */ rtx x_stack_slot_list; /* Place after which to insert the tail_recursion_label if we need one. */ @@ -226,19 +226,24 @@ struct rtl_data GTY(()) int inl_max_label_num; }; -#define return_label (rtl.x_return_label) -#define naked_return_label (rtl.x_naked_return_label) -#define stack_slot_list (rtl.x_stack_slot_list) -#define parm_birth_insn (rtl.x_parm_birth_insn) -#define frame_offset (rtl.x_frame_offset) -#define stack_check_probe_note (rtl.x_stack_check_probe_note) -#define arg_pointer_save_area (rtl.x_arg_pointer_save_area) -#define used_temp_slots (rtl.x_used_temp_slots) -#define avail_temp_slots (rtl.x_avail_temp_slots) -#define temp_slot_level (rtl.x_temp_slot_level) -#define nonlocal_goto_handler_labels (rtl.x_nonlocal_goto_handler_labels) - -extern GTY(()) struct rtl_data rtl; +#define return_label (crtl->x_return_label) +#define naked_return_label (crtl->x_naked_return_label) +#define stack_slot_list (crtl->x_stack_slot_list) +#define parm_birth_insn (crtl->x_parm_birth_insn) +#define frame_offset (crtl->x_frame_offset) +#define stack_check_probe_note (crtl->x_stack_check_probe_note) +#define arg_pointer_save_area (crtl->x_arg_pointer_save_area) +#define used_temp_slots (crtl->x_used_temp_slots) +#define avail_temp_slots (crtl->x_avail_temp_slots) +#define temp_slot_level (crtl->x_temp_slot_level) +#define nonlocal_goto_handler_labels (crtl->x_nonlocal_goto_handler_labels) + +extern GTY(()) struct rtl_data x_rtl; + +/* Accestor to RTL datastructures. We keep them statically allocated now since + we never keep multiple functions. For threaded compiler we might however + want to do differntly. */ +#define crtl (&x_rtl) /* This structure can save all the important global and static variables describing the status of the current function. */ |