osprey/kg++fe/gnu/function.c File Reference

#include "config.h"
#include "system.h"
#include "rtl.h"
#include "tree.h"
#include "flags.h"
#include "except.h"
#include "function.h"
#include "expr.h"
#include "libfuncs.h"
#include "regs.h"
#include "hard-reg-set.h"
#include "insn-config.h"
#include "recog.h"
#include "output.h"
#include "basic-block.h"
#include "toplev.h"
#include "hashtab.h"
#include "ggc.h"
#include "tm_p.h"
#include "integrate.h"
#include "langhooks.h"
#include "gt-function.h"

Include dependency graph for function.c:

Go to the source code of this file.

Data Types

type  insns_for_mem_entry
type  insns_for_mem_walk_info

Defines

#define TRAMPOLINE_ALIGNMENT   FUNCTION_BOUNDARY
#define LOCAL_ALIGNMENT(TYPE, ALIGNMENT)   ALIGNMENT
#define NAME__MAIN   "__main"
#define FLOOR_ROUND(VALUE, ALIGN)   ((VALUE) & ~((ALIGN) - 1))
#define CEIL_ROUND(VALUE, ALIGN)   (((VALUE) + (ALIGN) - 1) & ~((ALIGN)- 1))
#define STACK_POINTER_OFFSET   0
#define STACK_DYNAMIC_OFFSET(FNDECL)
#define ARG_POINTER_CFA_OFFSET(FNDECL)   FIRST_PARM_OFFSET (FNDECL)
#define STACK_BYTES   (STACK_BOUNDARY / BITS_PER_UNIT)
#define TRAMPOLINE_REAL_SIZE   (TRAMPOLINE_SIZE + (TRAMPOLINE_ALIGNMENT / BITS_PER_UNIT) - 1)

Functions/Subroutines

struct machine_function
*init_machine_status 
PARAMS ((void))
static GTY (())
static rtx assign_stack_local_1 PARAMS ((enum machine_mode, HOST_WIDE_INT, int, struct function *))
static struct temp_slot
*find_temp_slot_from_address 
PARAMS ((rtx))
static void put_reg_into_stack PARAMS ((struct function *, rtx, tree, enum machine_mode, enum machine_mode, int, unsigned int, int, htab_t))
static void schedule_fixup_var_refs PARAMS ((struct function *, rtx, tree, enum machine_mode, htab_t))
static void fixup_var_refs PARAMS ((rtx, enum machine_mode, int, rtx, htab_t))
static struct
fixup_replacement
*find_fixup_replacement 
PARAMS ((struct fixup_replacement **, rtx))
static void fixup_var_refs_insns PARAMS ((rtx, rtx, enum machine_mode, int, int, rtx))
static void
fixup_var_refs_insns_with_hash 
PARAMS ((htab_t, rtx, enum machine_mode, int, rtx))
static void fixup_var_refs_1 PARAMS ((rtx, enum machine_mode, rtx *, rtx, struct fixup_replacement **, rtx))
static rtx fixup_memory_subreg PARAMS ((rtx, rtx, enum machine_mode, int))
static rtx fixup_stack_1 PARAMS ((rtx, rtx))
static void optimize_bit_field PARAMS ((rtx, rtx, rtx *))
static void instantiate_decls PARAMS ((tree, int))
static void instantiate_decl PARAMS ((rtx, HOST_WIDE_INT, int))
static rtx instantiate_new_reg PARAMS ((rtx, HOST_WIDE_INT *))
static int
instantiate_virtual_regs_1 
PARAMS ((rtx *, rtx, int))
static void pad_to_arg_alignment PARAMS ((struct args_size *, int, struct args_size *))
static void pad_below PARAMS ((struct args_size *, enum machine_mode, tree))
static tree *identify_blocks_1 PARAMS ((rtx, tree *, tree *, tree *))
static void reorder_blocks_0 PARAMS ((tree))
static void reorder_blocks_1 PARAMS ((rtx, tree, varray_type *))
static int all_blocks PARAMS ((tree, tree *))
static tree *get_block_vector PARAMS ((tree, int *))
tree debug_find_var_in_block_tree PARAMS ((tree, tree))
static void record_insns PARAMS ((rtx, varray_type *))
void push_function_context_to (tree context)
void push_function_context ()
void pop_function_context_from (context)
void pop_function_context ()
void free_after_parsing (struct function *f)
void free_after_compilation (struct function *f)
HOST_WIDE_INT get_func_frame_size (struct function *f)
HOST_WIDE_INT get_frame_size ()
static rtx assign_stack_local_1 (enum machine_mode mode, HOST_WIDE_INT size, int align, struct function *function)
rtx assign_stack_local (enum machine_mode mode, HOST_WIDE_INT size, int align)
rtx assign_stack_temp_for_type (enum machine_mode mode, HOST_WIDE_INT size, int keep, tree type)
rtx assign_stack_temp (enum machine_mode mode, HOST_WIDE_INT size, int keep)
rtx assign_temp (tree type_or_decl, int keep, int memory_required, dont_promote)
void combine_temp_slots ()
static struct temp_slot * find_temp_slot_from_address (rtx x)
void update_temp_slot_address (rtx old, rtx new)
void mark_temp_addr_taken (rtx x)
void preserve_temp_slots (rtx x)
void preserve_rtl_expr_result (rtx x)
void free_temp_slots ()
void free_temps_for_rtl_expr (tree t)
void mark_all_temps_used ()
void push_temp_slots ()
void pop_temp_slots ()
void init_temp_slots ()
void put_var_into_stack (tree decl, int rescan)
static void put_reg_into_stack (struct function *function, rtx reg, tree type, enum machine_mode promoted_mode, enum machine_mode decl_mode, int volatile_p, unsigned int original_regno, int used_p, htab_t ht)
static void schedule_fixup_var_refs (struct function *function, rtx reg, tree type, enum machine_mode promoted_mode, htab_t ht)
static void fixup_var_refs (rtx var, enum machine_mode promoted_mode, int unsignedp, rtx may_share, htab_t ht)
static struct fixup_replacement * find_fixup_replacement (struct fixup_replacement **replacements, rtx x)
static void fixup_var_refs_insns (rtx insn, rtx var, enum machine_mode promoted_mode, int unsignedp, int toplevel, rtx may_share)
static void fixup_var_refs_insns_with_hash (htab_t ht, rtx var, enum machine_mode promoted_mode, int unsignedp, rtx may_share)
static void fixup_var_refs_insn (rtx insn, rtx var, enum machine_mode promoted_mode, int unsignedp, int toplevel, rtx no_share)
static void fixup_var_refs_1 (rtx var, enum machine_mode promoted_mode, rtx *loc, rtx insn, struct fixup_replacement **replacements, rtx no_share)
static rtx fixup_memory_subreg (rtx x, rtx insn, enum machine_mode promoted_mode, int uncritical)
static rtx walk_fixup_memory_subreg (rtx x, rtx insn, enum machine_mode promoted_mode, int uncritical)
static rtx fixup_stack_1 (rtx x, rtx insn)
static void optimize_bit_field (rtx body, rtx insn, rtx *equiv_mem)
rtx gen_mem_addressof (rtx reg, tree decl, int rescan)
void flush_addressof (tree decl)
static void put_addressof_into_stack (rtx r, htab_t ht)
static bool purge_addressof_1 (rtx *loc, rtx insn, int force, int store, htab_t ht)
static hashval_t insns_for_mem_hash (void *k) const
static int insns_for_mem_comp (void *k1, const void *k2) const
static int insns_for_mem_walk (rtx *r, void *data)
static void compute_insns_for_mem (rtx insns, rtx last_insn, htab_t ht)
static int is_addressof (rtx *rtl, data)
void purge_addressof (rtx insns)
static void purge_single_hard_subreg_set (rtx pattern)
void purge_hard_subreg_sets (rtx insn)
void instantiate_virtual_regs (tree fndecl, rtx insns)
static void instantiate_decls (tree fndecl, int valid_only)
static void instantiate_decls_1 (tree let, int valid_only)
static void instantiate_decl (rtx x, HOST_WIDE_INT size, int valid_only)
static rtx instantiate_new_reg (rtx x, HOST_WIDE_INT *poffset)
static void instantiate_virtual_regs_lossage (rtx insn)
static int instantiate_virtual_regs_1 (rtx *loc, rtx object, int extra_insns)
static void delete_handlers ()
int max_parm_reg_num ()
rtx get_first_nonparm_insn ()
rtx get_first_block_beg ()
int aggregate_value_p (tree exp)
void assign_parms (tree fndecl)
void locate_and_pad_parm (enum machine_mode passed_mode, tree type, in_regs, fndecl, struct args_size *initial_offset_ptr, struct args_size *offset_ptr, struct args_size *arg_size_ptr, struct args_size *alignment_pad)
static void pad_to_arg_alignment (struct args_size *offset_ptr, int boundary, struct args_size *alignment_pad)
static void pad_below (struct args_size *offset_ptr, enum machine_mode passed_mode, tree sizetree)
void uninitialized_vars_warning (tree block)
void setjmp_args_warning ()
void setjmp_protect (tree block)
void setjmp_protect_args ()
rtx lookup_static_chain (tree decl)
rtx fix_lexical_addr (rtx addr, tree var)
rtx trampoline_address (tree function)
static rtx round_trampoline_addr (rtx tramp)
static rtx adjust_trampoline_addr (rtx tramp)
void identify_blocks ()
static treeidentify_blocks_1 (rtx insns, tree *block_vector, tree *end_block_vector, tree *orig_block_stack)
void reorder_blocks ()
static void reorder_blocks_0 (tree block)
static void reorder_blocks_1 (rtx insns, tree current_block, varray_type *p_block_stack)
static void reorder_fix_fragments (tree block)
static tree blocks_nreverse (tree t)
static int all_blocks (tree block, tree *vector)
static treeget_block_vector (tree block, int *n_blocks_p)
void number_blocks (tree fn)
tree debug_find_var_in_block_tree (tree var, tree block)
static void prepare_function_start ()
void init_dummy_function_start ()
void init_function_start (tree subr, const char *filename, int line)
void init_function_for_compilation ()
void expand_main_function ()
void expand_pending_sizes (tree pending_sizes)
void expand_function_start (tree subr, int parms_have_cleanups)
void expand_dummy_function_end ()
void diddle_return_value (void *doit, void *arg)
static void do_clobber_return_reg (rtx reg, arg)
void clobber_return_register ()
static void do_use_return_reg (rtx reg, arg)
void use_return_register ()
rtx get_arg_pointer_save_area (struct function *f)
static void record_insns (rtx insns, varray_type *vecp)
static int contains (rtx insn, varray_type vec)
int prologue_epilogue_contains (rtx insn)
int sibcall_epilogue_contains (rtx insn)
void thread_prologue_and_epilogue_insns (f)
void reposition_prologue_and_epilogue_notes (f)
void init_function_once ()

Variables

int current_function_is_leaf
int current_function_nothrow
int current_function_sp_is_unchanging
int current_function_uses_only_leaf_regs
int virtuals_instantiated
int trampolines_created
static int funcdef_no
tree inline_function_decl
struct functioncfun = 0
static int in_arg_offset
static int var_offset
static int dynamic_offset
static int out_arg_offset
static int cfa_offset
static rtx purge_bitfield_addressof_replacements
static rtx purge_addressof_replacements
static int next_block_index = 2


Define Documentation

#define ARG_POINTER_CFA_OFFSET ( FNDECL   )     FIRST_PARM_OFFSET (FNDECL)

Definition at line 2911 of file function.c.

#define CEIL_ROUND ( VALUE,
ALIGN   )     (((VALUE) + (ALIGN) - 1) & ~((ALIGN)- 1))

#define FLOOR_ROUND ( VALUE,
ALIGN   )     ((VALUE) & ~((ALIGN) - 1))

Definition at line 93 of file function.c.

Referenced by assign_stack_local_1(), and pad_to_arg_alignment().

#define LOCAL_ALIGNMENT ( TYPE,
ALIGNMENT   )     ALIGNMENT

Definition at line 79 of file function.c.

#define NAME__MAIN   "__main"

Definition at line 87 of file function.c.

#define STACK_BYTES   (STACK_BOUNDARY / BITS_PER_UNIT)

#define STACK_DYNAMIC_OFFSET ( FNDECL   ) 

#define STACK_POINTER_OFFSET   0

Definition at line 2878 of file function.c.

#define TRAMPOLINE_ALIGNMENT   FUNCTION_BOUNDARY

Definition at line 75 of file function.c.

#define TRAMPOLINE_REAL_SIZE   (TRAMPOLINE_SIZE + (TRAMPOLINE_ALIGNMENT / BITS_PER_UNIT) - 1)

Referenced by trampoline_address().


Function Documentation

static rtx adjust_trampoline_addr ( rtx  tramp  )  [static]

Definition at line 5839 of file function.c.

References round_trampoline_addr(), and TRAMPOLINE_ADJUST_ADDRESS.

Referenced by trampoline_address().

int aggregate_value_p ( tree  exp  ) 

static int all_blocks ( tree  block,
tree vector 
) [static]

Definition at line 6143 of file function.c.

References BLOCK_CHAIN, BLOCK_SUBBLOCKS, and TREE_ASM_WRITTEN.

Referenced by all_blocks(), and get_block_vector().

void assign_parms ( tree  fndecl  ) 

Definition at line 4329 of file function.c.

References abort, ADD_PARM_SIZE, addr(), adjust_address, aggregate_value_p(), allocate_dynamic_stack_space(), ARG_POINTER_REGNUM, ARGS_SIZE_RTX, assign_stack_local(), assign_stack_temp(), BITS_PER_UNIT, BITS_PER_WORD, build_decl, build_pointer_type(), CEIL_ROUND, COMPLETE_TYPE_P, CONCAT, const0_rtx, args_size::constant, contains_placeholder_p(), convert_memory_address(), convert_to_mode(), copy, copy_to_reg(), current_function_arg_offset_rtx, current_function_args_info, current_function_args_size, current_function_internal_arg_pointer, current_function_pops_args, current_function_pretend_args_size, current_function_return_rtx, current_function_returns_pcc_struct, current_function_stdarg, DECL_ARG_TYPE, DECL_ARGUMENTS, DECL_INCOMING_RTL, DECL_MODE, DECL_NAME, DECL_REGISTER, DECL_RESULT, DECL_RTL, DECL_RTL_SET_P, DECL_TRANSPARENT_UNION, emit_group_store(), emit_insn(), emit_move_insn(), end_sequence(), error_mark_node, expand_assignment(), expand_expr(), expr_size(), FIRST_PSEUDO_REGISTER, fixed_regs, flag_float_store, FRAME_POINTER_REGNUM, FUNCTION_ARG, FUNCTION_ARG_ADVANCE, FUNCTION_ARG_BOUNDARY, FUNCTION_ARG_CALLEE_COPIES, FUNCTION_ARG_PARTIAL_NREGS, FUNCTION_ARG_PASS_BY_REFERENCE, FUNCTION_INCOMING_ARG, FUNCTION_OUTGOING_VALUE, FUNCTION_VALUE, gen_imagpart(), GEN_INT, gen_realpart(), gen_reg_rtx(), gen_rtx_EXPR_LIST, gen_rtx_MEM(), gen_rtx_PLUS, GET_CODE, get_insns(), get_last_insn(), GET_MODE, GET_MODE_ALIGNMENT, GET_MODE_SIZE, ggc_alloc_cleared, ggc_realloc, i, INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS, int_size_in_bytes(), INTVAL, last_parm_insn, LAST_VIRTUAL_REGISTER, len, locate_and_pad_parm(), make_tree(), mark_reg_pointer(), mark_user_reg(), MAX, max_parm_reg, MAYBE_REG_PARM_STACK_SPACE, maybe_set_unchanging(), MEM, memset, move_block_from_reg(), MUST_PASS_IN_STACK, nregs, NULL, NULL_RTX, NULL_TREE, optimize, PARM_BOUNDARY, parm_reg_stack_loc, Pmode, POINTER_TYPE_P, PRETEND_OUTGOING_VARARGS_NAMED, prev_nonnote_insn(), promote_mode(), push_to_sequence(), put_var_into_stack(), REG, REG_EQUIV, REG_FUNCTION_VALUE_P, reg_mentioned_p(), REG_NOTES, REG_P, REG_PARM_STACK_SPACE, REGNO, REGNO_DECL, regno_reg_rtx, result, RETURN_POPS_ARGS, SET_DECL_RTL, SET_DEST, set_mem_attributes(), SETUP_INCOMING_VARARGS, single_set, size_diffop(), size_int, STACK_BYTES, STACK_PARMS_IN_REG_PARM_AREA, STACK_POINTER_REGNUM, store_expr(), STRICT_ARGUMENT_NAMING, SUBREG_PROMOTED_UNSIGNED_SET, SUBREG_PROMOTED_VAR_P, SUBREG_REG, TREE_ADDRESSABLE, TREE_CHAIN, TREE_CODE, tree_last(), TREE_SIDE_EFFECTS, TREE_TYPE, TREE_UNSIGNED, TREE_USED, TREE_VALUE, TYPE_ALIGN, TYPE_ARG_TYPES, TYPE_FIELDS, TYPE_MODE, TYPE_SIZE, TYPE_TRANSPARENT_UNION, UNITS_PER_WORD, validize_mem(), args_size::var, virtual_incoming_args_rtx, void_type_node, x, XEXP, XVECEXP, and XVECLEN.

Referenced by expand_function_start(), and hack_method_prototype().

rtx assign_stack_local ( enum machine_mode  mode,
HOST_WIDE_INT  size,
int  align 
)

static rtx assign_stack_local_1 ( enum machine_mode  mode,
HOST_WIDE_INT  size,
int  align,
struct function function 
) [static]

rtx assign_stack_temp ( enum machine_mode  mode,
HOST_WIDE_INT  size,
int  keep 
)

rtx assign_stack_temp_for_type ( enum machine_mode  mode,
HOST_WIDE_INT  size,
int  keep,
tree  type 
)

Definition at line 650 of file function.c.

Referenced by assign_stack_temp(), assign_temp(), expand_expr(), and expand_expr_real_1().

rtx assign_temp ( tree  type_or_decl,
int  keep,
int  memory_required,
dont_promote   
)

static tree blocks_nreverse ( tree  t  )  [static]

Definition at line 6124 of file function.c.

References BLOCK_CHAIN, next, and prev.

Referenced by lower_bind_expr(), lower_function_body(), reorder_blocks(), and reorder_blocks_1().

void clobber_return_register ( void   ) 

void combine_temp_slots ( void   ) 

static void compute_insns_for_mem ( rtx  insns,
rtx  last_insn,
htab_t  ht 
) [static]

static int contains ( rtx  insn,
varray_type  vec 
) [static]

tree debug_find_var_in_block_tree ( tree  var,
tree  block 
)

Definition at line 6222 of file function.c.

Referenced by debug_find_var_in_block_tree().

static void delete_handlers (  )  [static]

void diddle_return_value ( void doit,
void arg 
)

static void do_clobber_return_reg ( rtx  reg,
arg   
) [static]

Definition at line 6794 of file function.c.

References emit_insn(), and gen_rtx_CLOBBER.

Referenced by clobber_return_register().

static void do_use_return_reg ( rtx  reg,
arg   
) [static]

Definition at line 6819 of file function.c.

References emit_insn(), and gen_rtx_USE.

Referenced by use_return_register().

void expand_dummy_function_end ( void   ) 

Definition at line 6750 of file function.c.

Referenced by backend_init(), and lang_dependent_init().

void expand_function_start ( tree  subr,
int  parms_have_cleanups 
)

Definition at line 6534 of file function.c.

References abort, aggregate_value_p(), assemble_static_space(), assign_parms(), assign_stack_local(), cleanup_label, context_display, copy_to_reg(), current_function_decl, current_function_funcdef_no, current_function_instrument_entry_exit, current_function_limit_stack, current_function_needs_context, current_function_profile, current_function_returns_pcc_struct, decl_function_context(), DECL_MODE, DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT, DECL_NO_LIMIT_STACK, DECL_REGISTER, DECL_RESULT, DECL_RTL, emit_library_call(), emit_move_insn(), emit_note(), expand_builtin_return_addr(), expand_pending_sizes(), flag_instrument_function_entry_exit, force_next_line_note(), gen_group_rtx(), gen_label_rtx(), gen_reg_rtx(), gen_rtx_EXPR_LIST, gen_rtx_MEM(), GET_CODE, get_frame_alias_set(), get_last_insn(), GET_MODE, GET_MODE_SIZE, get_pending_sizes(), hard_frame_pointer_rtx, hard_function_value(), HOST_WIDE_INT, init_recog_no_volatile(), int_size_in_bytes(), LCT_NORMAL, make_node, MEM, memory_address(), NOTE_INSN_DELETED, NOTE_INSN_FUNCTION_BEG, nreverse(), NULL, NULL_RTX, optimize, parm_birth_insn, plus_constant, Pmode, profile_flag, profile_function_entry_libfunc, PROFILE_HOOK, REG, REG_P, return_label, RTL_EXPR_RTL, save_expr_regs, SET_DECL_RTL, set_mem_alias_set(), set_mem_attributes(), size, SMALL_REGISTER_CLASSES, stack_limit_rtx, tail_recursion_reentry, tree_cons, TREE_TYPE, x, and XEXP.

Referenced by c_expand_body(), compile_resource_file(), complete_start_java_method(), emit_register_classes(), genrtl_start_function(), output_func_start_profiler(), store_parm_decls(), and tree_expand_cfg().

void expand_main_function ( void   ) 

Definition at line 6461 of file function.c.

Referenced by c_expand_body(), genrtl_start_function(), and tree_expand_cfg().

void expand_pending_sizes ( tree  pending_sizes  ) 

Definition at line 6512 of file function.c.

References const0_rtx, emit_queue(), expand_expr(), TREE_CHAIN, and TREE_VALUE.

Referenced by c_expand_body(), and expand_function_start().

static struct fixup_replacement* find_fixup_replacement ( struct fixup_replacement **  replacements,
rtx  x 
) [static, read]

Definition at line 1627 of file function.c.

References rtx_equal_p(), and xmalloc().

Referenced by fixup_var_refs_1().

static struct temp_slot* find_temp_slot_from_address ( rtx  x  )  [static, read]

rtx fix_lexical_addr ( rtx  addr,
tree  var 
)

static rtx fixup_memory_subreg ( rtx  x,
rtx  insn,
enum machine_mode  promoted_mode,
int  uncritical 
) [static]

static rtx fixup_stack_1 ( rtx  x,
rtx  insn 
) [static]

static void fixup_var_refs ( rtx  var,
enum machine_mode  promoted_mode,
int  unsignedp,
rtx  may_share,
htab_t  ht 
) [static]

static void fixup_var_refs_1 ( rtx  var,
enum machine_mode  promoted_mode,
rtx loc,
rtx  insn,
struct fixup_replacement **  replacements,
rtx  no_share 
) [static]

static void fixup_var_refs_insn ( rtx  insn,
rtx  var,
enum machine_mode  promoted_mode,
int  unsignedp,
int  toplevel,
rtx  no_share 
) [static]

static void fixup_var_refs_insns ( rtx  insn,
rtx  var,
enum machine_mode  promoted_mode,
int  unsignedp,
int  toplevel,
rtx  may_share 
) [static]

static void fixup_var_refs_insns_with_hash ( htab_t  ht,
rtx  var,
enum machine_mode  promoted_mode,
int  unsignedp,
rtx  may_share 
) [static]

void flush_addressof ( tree  decl  ) 

Definition at line 2977 of file function.c.

References ADDRESSOF, DECL_RTL, GET_CODE, MEM, put_addressof_into_stack(), REG, TREE_CODE, and XEXP.

void free_after_compilation ( struct function f  ) 

void free_after_parsing ( struct function f  ) 

void free_temp_slots ( void   ) 

void free_temps_for_rtl_expr ( tree  t  ) 

Definition at line 1228 of file function.c.

References combine_temp_slots(), NULL_TREE, and temp_slots.

Referenced by expand_expr().

rtx gen_mem_addressof ( rtx  reg,
tree  decl,
int  rescan 
)

rtx get_arg_pointer_save_area ( struct function f  ) 

static tree* get_block_vector ( tree  block,
int *  n_blocks_p 
) [static]

Definition at line 6174 of file function.c.

References all_blocks(), NULL, and xmalloc().

Referenced by identify_blocks(), and number_blocks().

rtx get_first_block_beg (  ) 

rtx get_first_nonparm_insn (  ) 

Definition at line 4258 of file function.c.

References get_insns(), last_parm_insn, and NEXT_INSN.

Referenced by function_cannot_inline_p(), get_first_block_beg(), and save_for_inline().

HOST_WIDE_INT get_frame_size ( void   ) 

Definition at line 511 of file function.c.

Referenced by alpha_expand_epilogue(), alpha_expand_prologue(), alpha_initial_elimination_offset(), alpha_sa_size(), alpha_start_function(), arc_delay_slots_for_epilogue(), arm_compute_initial_elimination_offset(), arm_expand_prologue(), arm_get_frame_offsets(), arm_output_epilogue(), avr_simple_epilogue(), bfin_expand_epilogue(), bfin_expand_prologue(), bfin_initial_elimination_offset(), c4x_expand_epilogue(), c4x_expand_prologue(), c4x_null_epilogue_p(), can_use_return_insn(), cris_delay_slots_for_epilogue(), cris_expand_epilogue(), cris_expand_prologue(), cris_initial_frame_pointer_offset(), cris_simple_epilogue(), cris_target_asm_function_prologue(), crx_compute_frame(), d30v_stack_info(), direct_return(), expand_epilogue(), expand_interrupt_handler_epilogue(), expand_interrupt_handler_prologue(), expand_prologue(), final_end_function(), final_start_function(), fr30_compute_frame_size(), frame_pointer_required_p(), frv_frame_pointer_required(), frv_stack_info(), h8300_can_use_return_insn_p(), h8300_expand_epilogue(), h8300_expand_prologue(), h8300_initial_elimination_offset(), hppa_can_use_return_insn_p(), hppa_expand_prologue(), i960_function_name_declare(), ia64_direct_return(), ia64_expand_epilogue(), ia64_expand_prologue(), ia64_initial_elimination_offset(), initial_elimination_offset(), initial_frame_pointer_offset(), initial_offset(), ip2k_init_elim_offset(), iq2000_can_use_return_insn(), iq2000_debugger_offset(), iq2000_expand_prologue(), iq2000_initial_elimination_offset(), ix86_compute_frame_layout(), layout_mcore_frame(), m32c_initial_elimination_offset(), m32r_expand_prologue(), m32r_first_insn_address(), m68hc11_initial_elimination_offset(), m68hc11_total_frame_size(), m68k_compute_frame_layout(), m88k_layout_frame(), mdx_epilogue(), mdx_prologue(), mips_can_use_return_insn(), mips_debugger_offset(), mips_expand_prologue(), mips_initial_elimination_offset(), mips_set_return_address(), mmix_expand_epilogue(), mmix_expand_prologue(), mmix_initial_elimination_offset(), mmix_use_simple_return(), mt_expand_epilogue(), mt_expand_prologue(), mt_initial_elimination_offset(), null_epilogue(), pj_expand_epilogue(), pj_expand_prologue(), reload(), romp_pushes_stack(), rounded_frame_size(), rs6000_stack_info(), s390_frame_info(), s390_initial_elimination_offset(), s390_register_info(), score_initial_elimination_offset(), sparc_expand_prologue(), sparc_flat_epilogue_delay_slots(), thumb_expand_epilogue(), thumb_expand_prologue(), total_frame_size(), use_return_insn(), xstormy16_compute_stack_layout(), xtensa_expand_prologue(), xtensa_function_prologue(), and xtensa_reorg().

HOST_WIDE_INT get_func_frame_size ( struct function f  ) 

Definition at line 497 of file function.c.

Referenced by copy_rtx_and_substitute(), and get_frame_size().

static GTY ( ()   )  [static]

Definition at line 153 of file function.c.

References address, align, HOST_WIDE_INT, next, and size.

void identify_blocks (  ) 

static tree* identify_blocks_1 ( rtx  insns,
tree block_vector,
tree end_block_vector,
tree orig_block_stack 
) [static]

void init_dummy_function_start ( void   ) 

Definition at line 6381 of file function.c.

Referenced by backend_init(), lang_dependent_init(), and push_function_context_to().

void init_function_for_compilation ( void   ) 

Definition at line 6443 of file function.c.

Referenced by rest_of_compilation().

void init_function_once ( void   ) 

Definition at line 8005 of file function.c.

Referenced by backend_init().

void init_function_start ( tree  subr,
const char *  filename,
int  line 
)

void init_temp_slots ( void   ) 

Definition at line 1332 of file function.c.

Referenced by prepare_function_start(), rest_of_clean_state(), and rest_of_compilation().

static int insns_for_mem_comp ( void k1,
const void k2 
) const [static]

Definition at line 3322 of file function.c.

References insns_for_mem_entry::key.

Referenced by purge_addressof().

static hashval_t insns_for_mem_hash ( void k  )  const [static]

Definition at line 3311 of file function.c.

References htab_hash_pointer, and insns_for_mem_entry::key.

Referenced by purge_addressof().

static int insns_for_mem_walk ( rtx r,
void data 
) [static]

static void instantiate_decl ( rtx  x,
HOST_WIDE_INT  size,
int  valid_only 
) [static]

static void instantiate_decls ( tree  fndecl,
int  valid_only 
) [static]

static void instantiate_decls_1 ( tree  let,
int  valid_only 
) [static]

static rtx instantiate_new_reg ( rtx  x,
HOST_WIDE_INT *  poffset 
) [static]

void instantiate_virtual_regs ( tree  fndecl,
rtx  insns 
)

static int instantiate_virtual_regs_1 ( rtx loc,
rtx  object,
int  extra_insns 
) [static]

static void instantiate_virtual_regs_lossage ( rtx  insn  )  [static]

static int is_addressof ( rtx rtl,
data   
) [static]

Definition at line 3415 of file function.c.

References ADDRESSOF, and GET_CODE.

Referenced by purge_addressof().

void locate_and_pad_parm ( enum machine_mode  passed_mode,
tree  type,
in_regs  ,
fndecl  ,
struct args_size initial_offset_ptr,
struct args_size offset_ptr,
struct args_size arg_size_ptr,
struct args_size alignment_pad 
)

rtx lookup_static_chain ( tree  decl  ) 

void mark_all_temps_used (  ) 

Definition at line 1253 of file function.c.

References MIN, temp_slot_level, and temp_slots.

void mark_temp_addr_taken ( rtx  x  ) 

Definition at line 1086 of file function.c.

Referenced by expand_call(), and expand_expr().

int max_parm_reg_num (  ) 

Definition at line 4250 of file function.c.

References max_parm_reg.

void number_blocks ( tree  fn  ) 

static void optimize_bit_field ( rtx  body,
rtx  insn,
rtx equiv_mem 
) [static]

static void pad_below ( struct args_size offset_ptr,
enum machine_mode  passed_mode,
tree  sizetree 
) [static]

static void pad_to_arg_alignment ( struct args_size offset_ptr,
int  boundary,
struct args_size alignment_pad 
) [static]

static void record_insns PARAMS ( (rtx, varray_type *)   )  [static]

Definition at line 286 of file function.c.

tree debug_find_var_in_block_tree PARAMS ( (tree, tree  ) 

static tree* get_block_vector PARAMS ( (tree, int *)   )  [static]

static int all_blocks PARAMS ( (tree, tree *)   )  [static]

static void reorder_blocks_1 PARAMS ( (rtx, tree, varray_type *)   )  [static]

static void reorder_blocks_0 PARAMS ( (tree  )  [static]

static tree* identify_blocks_1 PARAMS ( (rtx, tree *, tree *, tree *)   )  [static]

static void pad_below PARAMS ( (struct args_size *, enum machine_mode, tree  )  [static]

static void pad_to_arg_alignment PARAMS ( (struct args_size *, int, struct args_size *)   )  [static]

static int instantiate_virtual_regs_1 PARAMS ( (rtx *, rtx, int)   )  [static]

static rtx instantiate_new_reg PARAMS ( (rtx, HOST_WIDE_INT *)   )  [static]

static void instantiate_decl PARAMS ( (rtx, HOST_WIDE_INT, int)   )  [static]

static void instantiate_decls PARAMS ( (tree, int)   )  [static]

static void optimize_bit_field PARAMS ( (rtx, rtx, rtx *)   )  [static]

static rtx fixup_stack_1 PARAMS ( (rtx, rtx  )  [static]

static rtx fixup_memory_subreg PARAMS ( (rtx, rtx, enum machine_mode, int)   )  [static]

static void fixup_var_refs_1 PARAMS ( (rtx, enum machine_mode, rtx *, rtx, struct fixup_replacement **, rtx  )  [static]

static void fixup_var_refs_insns_with_hash PARAMS ( (htab_t, rtx, enum machine_mode, int, rtx  )  [static]

static void fixup_var_refs_insns PARAMS ( (rtx, rtx, enum machine_mode, int, int, rtx  )  [static]

static struct fixup_replacement* find_fixup_replacement PARAMS ( (struct fixup_replacement **, rtx  )  [static, read]

static void fixup_var_refs PARAMS ( (rtx, enum machine_mode, int, rtx, htab_t  )  [static]

static void schedule_fixup_var_refs PARAMS ( (struct function *, rtx, tree, enum machine_mode, htab_t  )  [static]

static void put_reg_into_stack PARAMS ( (struct function *, rtx, tree, enum machine_mode, enum machine_mode, int, unsigned int, int, htab_t  )  [static]

static struct temp_slot* find_temp_slot_from_address PARAMS ( (rtx  )  [static, read]

static rtx assign_stack_local_1 PARAMS ( (enum machine_mode, HOST_WIDE_INT, int, struct function *)   )  [static]

struct machine_function* init_machine_status PARAMS ( (void  )  [read]

Definition at line 77 of file cplus-dem.c.

void pop_function_context ( void   ) 

void pop_function_context_from ( context   ) 

void pop_temp_slots ( void   ) 

static void prepare_function_start (  )  [static]

Definition at line 6245 of file function.c.

References arg_pointer_save_area, caller_save_needed, cse_not_expected, current_function_calls_alloca, current_function_calls_longjmp, current_function_calls_setjmp, current_function_cannot_inline, current_function_contains_functions, current_function_epilogue_delay_list, current_function_funcdef_no, current_function_has_computed_jump, current_function_has_nonlocal_goto, current_function_has_nonlocal_label, current_function_is_leaf, current_function_is_thunk, current_function_nothrow, current_function_outgoing_args_size, current_function_returns_pcc_struct, current_function_returns_struct, current_function_sp_is_unchanging, current_function_stdarg, current_function_uses_const_pool, current_function_uses_only_leaf_regs, current_function_uses_pic_offset_table, flag_test_coverage, frame_offset, frame_pointer_needed, funcdef_no, function, function_call_count, FUNCTION_FREQUENCY_NORMAL, generating_concat_p, ggc_alloc_cleared, inhibit_defer_pop, init_eh_for_function(), init_emit(), init_expr(), init_machine_status, init_pending_stack_adjust(), init_stmt_for_function(), init_temp_slots(), init_varasm_status(), LAST_VIRTUAL_REGISTER, max_parm_reg, nonlocal_goto_handler_labels, nonlocal_goto_handler_slots, nonlocal_goto_stack_level, nonlocal_labels, optimize, profile_arc_flag, reg_renumber, rtl_expr_chain, rtx_equal_function_value_matters, save_expr_regs, STACK_BOUNDARY, stack_slot_list, tail_recursion_label, trampoline_list, and virtuals_instantiated.

Referenced by init_dummy_function_start(), and init_function_start().

void preserve_rtl_expr_result ( rtx  x  ) 

Definition at line 1183 of file function.c.

References CONSTANT_P, find_temp_slot_from_address(), GET_CODE, MEM, MIN, temp_slot_level, and XEXP.

Referenced by expand_expr().

void preserve_temp_slots ( rtx  x  ) 

int prologue_epilogue_contains ( rtx  insn  ) 

Definition at line 7264 of file function.c.

Referenced by init_alias_analysis(), propagate_one_insn(), and rs6000_ra_ever_killed().

void purge_addressof ( rtx  insns  ) 

static bool purge_addressof_1 ( rtx loc,
rtx  insn,
int  force,
int  store,
htab_t  ht 
) [static]

void purge_hard_subreg_sets ( rtx  insn  ) 

static void purge_single_hard_subreg_set ( rtx  pattern  )  [static]

void push_function_context ( void   ) 

void push_function_context_to ( tree context   ) 

void push_temp_slots ( void   ) 

static void put_addressof_into_stack ( rtx  r,
htab_t  ht 
) [static]

static void put_reg_into_stack ( struct function function,
rtx  reg,
tree  type,
enum machine_mode  promoted_mode,
enum machine_mode  decl_mode,
int  volatile_p,
unsigned int  original_regno,
int  used_p,
htab_t  ht 
) [static]

void put_var_into_stack ( tree  decl,
int  rescan 
)

static void record_insns ( rtx  insns,
varray_type vecp 
) [static]

Definition at line 7208 of file function.c.

References i, INSN_UID, len, NEXT_INSN, NULL_RTX, tmp, VARRAY_GROW, VARRAY_INT, and VARRAY_SIZE.

Referenced by thread_prologue_and_epilogue_insns().

void reorder_blocks ( void   ) 

static void reorder_blocks_0 ( tree  block  )  [static]

Definition at line 5988 of file function.c.

References BLOCK_CHAIN, BLOCK_SUBBLOCKS, and TREE_ASM_WRITTEN.

Referenced by reorder_blocks(), and reorder_blocks_0().

static void reorder_blocks_1 ( rtx  insns,
tree  current_block,
varray_type p_block_stack 
) [static]

static void reorder_fix_fragments ( tree  block  )  [static]

void reposition_prologue_and_epilogue_notes ( f   ) 

static rtx round_trampoline_addr ( rtx  tramp  )  [static]

static void schedule_fixup_var_refs ( struct function function,
rtx  reg,
tree  type,
enum machine_mode  promoted_mode,
htab_t  ht 
) [static]

Definition at line 1544 of file function.c.

References fixup_var_refs(), ggc_alloc, and TREE_UNSIGNED.

Referenced by put_reg_into_stack(), and put_var_into_stack().

void setjmp_args_warning ( void   ) 

Definition at line 5558 of file function.c.

Referenced by rest_of_compilation(), and rest_of_handle_life().

void setjmp_protect ( tree  block  ) 

void setjmp_protect_args (  ) 

int sibcall_epilogue_contains ( rtx  insn  ) 

Definition at line 7275 of file function.c.

Referenced by propagate_one_insn().

void thread_prologue_and_epilogue_insns ( f   ) 

rtx trampoline_address ( tree  function  ) 

void uninitialized_vars_warning ( tree  block  ) 

void update_temp_slot_address ( rtx  old,
rtx  new 
)

void use_return_register ( void   ) 

Definition at line 6827 of file function.c.

References diddle_return_value(), do_use_return_reg(), and NULL.

Referenced by reg_alloc().

static rtx walk_fixup_memory_subreg ( rtx  x,
rtx  insn,
enum machine_mode  promoted_mode,
int  uncritical 
) [static]


Variable Documentation

int cfa_offset [static]

Definition at line 150 of file function.c.

Referenced by add_action_record(), add_call_site(), add_ehl_entry(), add_ehspec_entry(), add_reachable_handler(), add_stmt_to_eh_region(), add_ttypes_entry(), alloc_stack_frame_space(), allocate_dynamic_stack_space(), allocate_initial_values(), allocate_struct_function(), alpha_gp_save_rtx(), alpha_setup_incoming_varargs(), annotate_constant_pool_refs(), any_pending_cleanups(), apply_args_size(), arm_compute_func_type(), arm_compute_initial_elimination_offset(), arm_compute_save_reg_mask(), arm_current_func_type(), arm_expand_prologue(), arm_function_ok_for_sibcall(), arm_get_frame_offsets(), arm_init_expanders(), arm_output_epilogue(), arm_output_function_epilogue(), arm_output_function_prologue(), arm_return_addr(), arm_setup_incoming_varargs(), assemble_end_function(), assemble_start_function(), assign_filter_values(), assign_parm_adjust_stack_rtl(), assign_stack_local(), assign_stack_local_1(), attr_length_call(), attr_length_indirect_call(), attr_length_millicode_call(), begin_global_stmt_expr(), begin_parsing_inclass_inline(), begin_stmt_expr(), bfin_hardware_loop(), bfin_reorg(), block_alloc(), build_call(), build_cxx_call(), build_duplicate_type(), build_over_call(), build_post_landing_pads(), build_throw(), c_expand_body(), calculate_global_regs_live(), can_throw_external(), can_throw_external_1(), can_throw_internal(), can_throw_internal_1(), cgraph_build_static_cdtor(), check_all_va_list_escapes(), check_block_change(), check_function_return_warnings(), choose_function_section(), collect_eh_region_array(), compute_avail(), compute_frame_size(), compute_function_frequency(), compute_vrsave_mask(), connect_post_landing_pads(), constant_val_insert(), construct_exit_block(), convert_from_eh_region_ranges(), convert_from_eh_region_ranges_1(), convert_to_eh_region_ranges(), copy_body(), copy_cfg_body(), copy_rtx_and_substitute(), create_omp_child_function(), create_stack_guard(), cris_delay_slots_for_epilogue(), cris_expand_prologue(), cris_expand_return(), cris_got_symbol(), cris_gotless_symbol(), cris_initial_elimination_offset(), cris_return_addr_rtx(), cris_return_address_on_stack(), cris_return_address_on_stack_for_return(), cris_setup_incoming_varargs(), cris_target_asm_function_epilogue(), cris_target_asm_function_prologue(), current_function_has_exception_handlers(), current_function_name(), current_nesting_level(), current_scope_stmt_stack(), current_stmt_tree(), d30v_expand_epilogue(), declare_inline_vars(), default_section_type_flags(), do_tablejump(), dump_function_to_file(), duplicate_eh_region_1(), duplicate_eh_regions(), duplicate_eh_regions_1(), dw2_build_landing_pads(), dw2_output_call_site_table(), dw2_size_of_call_site_table(), embedded_pic_fnaddr_reg(), emit_initial_value_sets(), emit_library_call_value_1(), emit_move_insn_1(), establish_preds(), execute_cse_reciprocals(), execute_fixup_cfg(), execute_one_pass(), execute_optimize_stdarg(), execute_warn_function_noreturn(), execute_warn_function_return(), expand_anon_union_decl(), expand_builtin_apply(), expand_builtin_apply_args_1(), expand_builtin_eh_return(), expand_builtin_setjmp_receiver(), expand_call(), expand_call_inline(), expand_computed_goto(), expand_decl_cleanup(), expand_dummy_function_end(), expand_eh_region_end(), expand_eh_region_end_cleanup(), expand_eh_region_start(), expand_eh_return(), expand_end_all_catch(), expand_end_catch(), expand_expr(), expand_expr_real(), expand_expr_real_1(), expand_fixup(), expand_function_start(), expand_inline_function(), expand_nl_goto_receiver(), expand_omp_parallel(), expand_resx_expr(), expand_start_all_catch(), expand_start_catch(), expand_used_vars(), final(), find_exception_handler_labels(), finish_eh_generation(), finish_function(), finish_global_stmt_expr(), finish_stmt_expr(), finish_stmt_tree(), flow_loops_find(), fold_builtin_constant_p(), for_each_eh_label(), for_each_eh_region(), force_const_mem(), force_label_rtx(), foreach_reachable_handler(), free_block_changes(), frv_dynamic_chain_address(), frv_emit_movsi(), frv_expand_builtin_va_start(), frv_expand_fdpic_call(), frv_expand_load_builtin(), frv_expand_prologue(), frv_expand_store_builtin(), frv_frame_pointer_required(), frv_init_cumulative_args(), frv_reorg(), frv_return_addr_rtx(), frv_stack_info(), function_arg(), function_section(), gen_eh_epilogue(), gen_eh_region(), gen_reg_rtx(), gen_rtx_REG(), genrtl_start_function(), get_arg_pointer_save_area(), get_decl_align_unit(), get_exception_filter(), get_exception_pointer(), get_frame_size(), get_hard_reg_initial_val(), get_pool_constant(), get_pool_constant_mark(), get_pool_mode(), get_pool_offset(), get_pool_size(), get_some_local_dynamic_name(), get_some_local_dynamic_name_1(), gimple_add_tmp_var(), gimplify_function_tree(), GTY(), h8300_emit_stack_adjustment(), handle_pragma_diagnostic(), has_hard_reg_initial_val(), ia64_compute_frame_size(), ia64_expand_epilogue(), ia64_expand_prologue(), ia64_output_function_profiler(), ia64_setup_incoming_varargs(), init_eh_for_function(), init_emit(), init_expr(), init_flow(), init_parameter_lattice_values(), init_reassoc(), init_stmt_for_function(), initialize_cold_section_name(), initialize_inlined_parameters(), insn_scope(), instantiate_decl(), ipa_passes(), ipa_pta_execute(), iq2000_can_use_return_insn(), iq2000_debugger_offset(), iq2000_expand_eh_return(), iq2000_expand_epilogue(), iq2000_initial_elimination_offset(), ix86_compute_frame_layout(), ix86_expand_epilogue(), ix86_expand_prologue(), ix86_frame_pointer_required(), ix86_function_ok_for_sibcall(), ix86_internal_arg_pointer(), ix86_pad_returns(), ix86_save_reg(), ix86_setup_frame_addresses(), ix86_setup_incoming_varargs(), ix86_va_start(), legitimize_pic_address(), locate_and_pad_parm(), lookup_stmt_eh_region(), lower_function_body(), m16_usym5_4(), m16_usym8_4(), m32c_eh_return_stackadj_rtx(), m32c_emit_eh_epilogue(), m32c_emit_epilogue(), m32c_emit_prologue(), m32c_epilogue_uses(), m32c_function_needs_enter(), m32c_leaf_function_p(), m32c_pushm_popm(), machine_dependent_reorg(), make_edges(), mark_constant(), mark_used(), maybe_duplicate_computed_goto_succ(), maybe_output_constant_def_contents(), maybe_push_to_top_level(), maybe_remove_eh_handler(), mem_min_alignment(), mips16_gp_pseudo_reg(), mips_adjust_insn_length(), mips_avoid_hazard(), mips_avoid_hazards(), mips_can_use_return_insn(), mips_current_loadgp_style(), mips_debugger_offset(), mips_emit_loadgp(), mips_expand_epilogue(), mips_expand_prologue(), mips_for_each_saved_reg(), mips_function_has_gp_insn(), mips_initial_elimination_offset(), mips_output_cplocal(), mips_output_function_epilogue(), mips_output_function_prologue(), mips_output_mi_thunk(), mips_restore_gp(), mips_save_reg_p(), mips_set_return_address(), mips_setup_incoming_varargs(), mips_va_start(), mmix_print_operand(), mmix_reorg(), mmix_target_asm_function_end_prologue(), mmix_target_asm_function_prologue(), move_block_to_fn(), move_sese_region_to_fn(), mt_add_loop(), mt_emit_eh_epilogue(), mt_epilogue_uses(), mt_expand_epilogue(), mt_expand_prologue(), mt_init_cumulative_args(), mt_machine_reorg(), need_to_save(), new_omp_context(), nonnull_arg_p(), note_current_region_may_contain_throw(), note_eh_region_may_contain_throw(), open_dump_file(), output_constant_pool(), output_func_start_profiler(), output_function_exception_table(), output_function_profiler(), output_stack_adjust(), pa_asm_output_mi_thunk(), pa_output_function_epilogue(), pop_cfun(), pop_function_context_from(), poplevel(), prepare_function_start(), preserve_subexpressions_p(), process_epilogue(), process_for_unwind_directive(), process_next_inline(), profile_function(), push_function_context_to(), push_to_top_level(), pushdecl(), pushlevel(), reachable_handlers(), reachable_next_level(), record_block_change(), record_vars(), record_vars_into(), reemit_insn_block_notes(), reload(), remap_decls(), remove_eh_handler(), remove_exception_handler_label(), remove_fixup_regions(), remove_stmt_from_eh_region(), remove_unreachable_regions(), remove_unused_locals(), remove_useless_vars(), reset_block_changes(), resolve_fixup_regions(), rest_of_clean_state(), rest_of_compilation(), rest_of_handle_jump(), rs6000_emit_prologue(), rs6000_get_some_local_dynamic_name(), rs6000_get_some_local_dynamic_name_1(), rs6000_ra_ever_killed(), rs6000_return_addr(), rs6000_stack_info(), rs6000_va_start(), s390_can_eliminate(), s390_chunkify_start(), s390_decompose_address(), s390_emit_prologue(), s390_hard_regno_rename_ok(), s390_init_frame_layout(), s390_mainpool_finish(), s390_register_info(), s390_regs_ever_clobbered(), s390_reorg(), s390_set_has_landing_pad_p(), s390_split_branches(), s390_update_frame_layout(), s390_va_start(), save_for_inline(), save_restore_insns(), scope_to_insns_finalize(), scope_to_insns_initialize(), set_bb_for_stmt(), set_block(), set_file_and_line_for_stmt(), set_nothrow_function_flags(), setup_incoming_promotions(), setup_incoming_varargs(), setup_initial_hard_reg_value_integration(), sh5_schedule_saves(), sh_output_mi_thunk(), simple_memory_operand(), sjlj_assign_call_site_values(), sjlj_build_landing_pads(), sjlj_emit_dispatch_table(), sjlj_emit_function_enter(), sjlj_emit_function_exit(), sjlj_emit_function_exit_after(), sjlj_find_directly_reachable_regions(), sjlj_mark_call_sites(), sjlj_output_call_site_table(), sjlj_size_of_call_site_table(), som_output_text_section_asm_op(), som_text_section_asm_op(), stack_protect_epilogue(), stack_protect_prologue(), start_function(), start_preparsed_function(), stmt_loop_nest_empty(), store_parm_decls(), switch_to_section(), thumb_call_via_reg(), thumb_expand_prologue(), thumb_far_jump_used_p(), thumb_find_work_register(), thumb_force_lr_save(), thumb_output_function_prologue(), thumb_unexpanded_epilogue(), tree_expand_cfg(), tree_function_versioning(), tree_rest_of_compilation(), tsubst_default_argument(), unlikely_text_section(), unlikely_text_section_p(), unroll_loop(), unshare_all_rtl_again(), update_nonlocal_goto_save_area(), update_parameter_components(), update_total_code_bytes(), use_return_insn(), use_thunk(), used_types_insert(), va_list_counter_bump(), va_list_counter_op(), va_list_ptr_write(), variable_size(), VEC(), verify_eh_tree(), warn_uninit(), xstormy16_interrupt_function_p(), xtensa_copy_incoming_a7(), xtensa_expand_prologue(), xtensa_frame_pointer_required(), and xtensa_setup_frame_addresses().

int dynamic_offset [static]

Definition at line 2870 of file function.c.

Referenced by allocate_dynamic_stack_space().

int funcdef_no [static]

Definition at line 140 of file function.c.

Referenced by allocate_struct_function(), and prepare_function_start().

int in_arg_offset [static]

Definition at line 2868 of file function.c.

Definition at line 147 of file function.c.

Referenced by expand_expr(), and expand_inline_function().

int next_block_index = 2 [static]

Definition at line 6187 of file function.c.

int out_arg_offset [static]

Definition at line 2871 of file function.c.

Definition at line 3033 of file function.c.

Definition at line 3025 of file function.c.

Definition at line 137 of file function.c.

Referenced by expand_builtin_init_trampoline(), and file_end_indicate_exec_stack().

int var_offset [static]


Generated on Wed Apr 8 15:32:37 2009 for Open64 by  doxygen 1.5.6