t pointer arithmetics for function FUNC. Otherwise return FALSE. */ extern bool frame_offset_overflow (poly_int64, tree); extern unsigned int spill_slot_alignment (machine_mode); extern rtx assign_stack_local_1 (machine_mode, poly_int64, int, int); extern rtx assign_stack_local (machine_mode, poly_int64, int); extern rtx assign_stack_temp_for_type (machine_mode, poly_int64, tree); extern rtx assign_stack_temp (machine_mode, poly_int64); extern rtx assign_temp (tree, int, int); extern void update_temp_slot_address (rtx, rtx); extern void preserve_temp_slots (rtx); extern void free_temp_slots (void); extern void push_temp_slots (void); extern void pop_temp_slots (void); extern void init_temp_slots (void); extern rtx get_hard_reg_initial_reg (rtx); extern rtx get_hard_reg_initial_val (machine_mode, unsigned int); extern rtx has_hard_reg_initial_val (machine_mode, unsigned int); /* Called from gimple_expand_cfg. */ extern unsigned int emit_initial_value_sets (void); extern bool initial_value_entry (int i, rtx *, rtx *); extern void instantiate_decl_rtl (rtx x); extern int aggregate_value_p (const_tree, const_tree); extern bool use_register_for_decl (const_tree); extern gimple_seq gimplify_parameters (gimple_seq *); extern void locate_and_pad_parm (machine_mode, tree, int, int, int, tree, struct args_size *, struct locate_and_pad_arg_data *); extern void generate_setjmp_warnings (void); /* Identify BLOCKs referenced by more than one NOTE_INSN_BLOCK_{BEG,END}, and create duplicate blocks. */ extern void reorder_blocks (void); extern void clear_block_marks (tree); extern tree blocks_nreverse (tree); extern tree block_chainon (tree, tree); /* Set BLOCK_NUMBER for all the blocks in FN. */ extern void number_blocks (tree); /* cfun shouldn't be set directly; use one of these functions instead. */ extern void set_cfun (struct function *new_cfun, bool force = false); extern void push_cfun (struct function *new_cfun); extern void pop_cfun (void); extern int get_next_funcdef_no (void); extern int get_last_funcdef_no (void); extern void allocate_struct_function (tree, bool); extern void push_struct_function (tree fndecl); extern void push_dummy_function (bool); extern void pop_dummy_function (void); extern void init_dummy_function_start (void); extern void init_function_start (tree); extern void stack_protect_epilogue (void); extern void expand_function_start (tree); extern void expand_dummy_function_end (void); extern void thread_prologue_and_epilogue_insns (void); extern void diddle_return_value (void (*)(rtx, void*), void*); extern void clobber_return_register (void); extern void expand_function_end (void); extern rtx get_arg_pointer_save_area (void); extern void maybe_copy_prologue_epilogue_insn (rtx, rtx); extern int prologue_contains (const rtx_insn *); extern int epilogue_contains (const rtx_insn *); extern int prologue_epilogue_contains (const rtx_insn *); extern void record_prologue_seq (rtx_insn *); extern void record_epilogue_seq (rtx_insn *); extern void emit_return_into_block (bool simple_p, basic_block bb); extern void set_return_jump_label (rtx_insn *); extern bool active_insn_between (rtx_insn *head, rtx_insn *tail); extern vec convert_jumps_to_returns (basic_block last_bb, bool simple_p, vec unconverted); extern basic_block emit_return_for_exit (edge exit_fallthru_edge, bool simple_p); extern void reposition_prologue_and_epilogue_notes (void); /* Returns the name of the current function. */ extern const char *fndecl_name (tree); extern const char *function_name (struct function *); extern const char *current_function_name (void); extern void used_types_insert (tree); #endif /* GCC_FUNCTION_H */