summaryrefslogtreecommitdiff
path: root/gcc/tm.texi
Commit message (Collapse)AuthorAgeFilesLines
* Jakub Jelinek <jj@ultra.linux.cz>rth1999-08-021-4/+6
| | | | | | | | | | | | * c-decl.c (get_parm_info, store_parm_decls): Change all uses of PROMOTE_PROTOTYPES, so that it tests it as a C expression. Ensure expr.h is included. * c-typecheck.c (convert_arguments): Ditto. * expr.h: Supply default for PROMOTE_PROTOTYPES (0). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28420 138bc75d-0d04-0410-961f-82ee72b054a4
* Jakub Jelinek <jj@ultra.linux.cz>rth1999-08-021-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config/sparc/sparc.h (ASM_DECLARE_REGISTER_GLOBAL): New macro. (RTX_OK_FOR_OLO10): Likewise. (GO_IF_LEGITIMATE_ADDRESS): If assembler supports offsetable %lo(), allow it in addresses... (PRINT_OPERAND_ADDRESS): ... and print it appropriately. * config/sparc/sparc.md (sethi_di_medlow_embmedany_pic): sethi %lo() does not make sense. * config/sparc/sparc.c (sparc_hard_reg_printed): New array. (sparc_output_scratch_registers): New function. (output_function_prologue, sparc_flat_output_function_prologue): Use it. * varasm.c (make_decl_rtl): Use ASM_DECLARE_REGISTER_GLOBAL if defined. * tm.texi (ASM_DECLARE_REGISTER_GLOBAL): Document it. * configure.in: Add check for .register pseudo-op support in as and check for offsetable %lo(). * acconfig.h: Add templates for the above checks. * configure: Regenerate. Richard Henderson <rth@cygnus.com> * sparc/linux64.h (TARGET_DEFAULT): Remove MASK_APP_REGS. * sparc/sol2-sld-64.h (TARGET_DEFAULT): Likewise. * sparc/sol2.h (TARGET_DEFAULT): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28414 138bc75d-0d04-0410-961f-82ee72b054a4
* Implement new macro: ASM_FPRINTF_EXTENSIONSnickc1999-07-261-0/+13
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28263 138bc75d-0d04-0410-961f-82ee72b054a4
* * builtins.c (expand_builtin_saveregs): Remove static, remove exprth1999-07-261-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and ignore arguments, bail if no EXPAND_BUILTIN_SAVEREGS. (expand_builtin_next_arg): Accept ARGLIST not EXP. (stabilize_va_list): New function. (std_expand_builtin_va_start): New function. (expand_builtin_va_start): New function. (get_varargs_alias_set): New function. (std_expand_builtin_va_arg): New function. (expand_builtin_va_arg): New function. (expand_builtin_va_end): New function. (expand_builtin_va_copy): New function. (expand_builtin): Call them. * c-common.c (c_common_nodes_and_builtins): Build __builtin_va_list, __builtin_{varargs_start,stdarg_start,end,copy}. (build_va_arg): New function. * c-common.h (CTI_PTR_TYPE, ptr_type_node): Delete. (build_va_arg): Declare. * c-decl.c (ptr_type_node, va_list_type_node): New. * c-parse.gperf (__builtin_va_arg): New. * c-parse.in (VA_ARG): New token. (unary_expr): Recognize it. * expr.c (expand_expr): Expand VA_ARG_EXPR. * expr.h (std_expand_builtin_va_start): Declare. (std_expand_builtin_va_arg): Declare. (expand_builtin_va_arg): Declare. (get_varargs_alias_set): Declare. * tree.def (VA_ARG_EXPR): New. * tree.h (BUILT_IN_VARARGS_START): New. (BUILT_IN_STDARG_START, BUILT_IN_VA_END): New. (ptr_type_node, va_list_type_node): Declare. * tm.texi (EXPAND_BUILTIN_SAVEREGS): Kill unused ARGLIST argument. * m32r.h (EXPAND_BUILTIN_SAVEREGS): Likewise. * m88k.h, m88k.c: Likewise. * mn10300.h, mn10300.c: Likewise. * pa.h, pa.c: Likewise. * rs6000.h, rs6000.c: Likewise. * sh.h, sh.c: Likewise. * sparc.h, sparc.c: Likewise. * emit-rtl.c (operand_subword): Copy alias set. (change_address): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28243 138bc75d-0d04-0410-961f-82ee72b054a4
* * defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): New macro.mmitchel1999-07-221-0/+7
| | | | | | | | | | | | * tm.texi (DWARF2_GENERATE_TEXT_SECTION_LABEL): Define it. * dwarf2out.c (dwarf2out_init): Don't output a label to mark the start of the text section if DWARF2_GENERATE_TEXT_SECTION_LABEL is false. * config/mips/iris6.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): Define to zero. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28213 138bc75d-0d04-0410-961f-82ee72b054a4
* * haifa-sched.c (insn_cost): FREE implies cost 0 and vice versa.rth1999-07-211-2/+6
| | | | | | | | | | | | | | | | | (adjust_priority): Always call ADJUST_PRIORITY. (schedule_insn): Only put insns into the ready at cost 0. (schedule_block): Remove redundant initial sort. Give clock_var and can_issue_more to MD_SCHED_REORDER. Requeue if hazard cost is not 0. * tm.texi (MD_SCHED_REORDER): Update docs. * sparc.h (MD_SCHED_REORDER): Update. Set CAN_ISSUE_MORE. * sparc.c (ultra_reorder_called_this_block): Delete. (ultrasparc_sched_init): Don't set it. (ultrasparc_sched_reorder): Don't check it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28201 138bc75d-0d04-0410-961f-82ee72b054a4
* Use ASM_OUTPUT_DEF_FROM_DECLS in preference to ASM_OUTPUT_DEF, if it is defined.nickc1999-06-181-0/+8
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@27585 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi (MD_EXEC_PREFIX): Note need to update configure.in too.law1999-05-311-1/+2
| | | | | | | Forgot to commit. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@27273 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix description of a stack element in a PARALLEL generated by FUNCTION_ARGnickc1999-05-221-3/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@27096 138bc75d-0d04-0410-961f-82ee72b054a4
* (FUNCTION_ARG): Stack element of PARALLEL must come firstnickc1999-05-111-7/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26879 138bc75d-0d04-0410-961f-82ee72b054a4
* * output.h (current_function_is_leaf,wehle1999-04-181-8/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | current_function_uses_only_leaf_regs): Declare. * function.c (current_function_is_leaf, current_function_uses_only_leaf_regs): Define. (init_function_start): Initialize current_function_is_leaf and current_function_uses_only_leaf_regs. * final.c (leaf_function): Don't define. (final_start_function): Replace uses of leaf_function with current_function_uses_only_leaf_regs. * toplev.c (rest_of_compilation): Set current_function_is_leaf prior to invoking local register allocation. (rest_of_compilation): Replace uses of leaf_function with current_function_uses_only_leaf_regs. * dbxout.c (dbxout_symbol, dbxout_parms): Likewise. * dwarf2out.c (add_location_or_const_vaule_attribute): Likewise. * dwarfout.c (add_location_or_const_value_attribute): Likewise. * sdbout.c (sdbout_symbol): Likewise. * sparc.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise. * sparc.c (eligible_for_epilogue_delay, output_return, sparc_return_peephole_ok): Likewise. * sparc.md (leaf_function attribute, untyped_return): Likewise. * i386.c (ix86_compute_frame_size): Don't align the stack for leaf functions which don't allocate any stack slots. * tm.texi: Update documentation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26538 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,m.hayes1999-04-021-14/+38
| | | | | | | | | | | | | | | | | USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT): Document. (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT, USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Fix documentation. * rtl.h (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT, USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT, USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT, USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Provide default definition. * expr.c: (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT, USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Delete default definition. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26134 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix typonickc1999-03-221-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@25900 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi (Varargs): Don't split argument of @item across lines.schwab1999-03-201-4/+1
| | | | | | | * invoke.texi: Fix use of @item vs @itemx. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@25870 138bc75d-0d04-0410-961f-82ee72b054a4
* * sh.h (PASS_IN_REG_P): For TARGET_HITACHI, don't pass structuresamylaar1999-02-251-0/+9
| | | | | | | | | | | | | | | | | | in registers. * expr.h (PRETEND_OUTGOING_VARARGS_NAMED): Provide default definition. * function.c (assign_parms): Honour PRETEND_OUTGOING_VARARGS_NAMED. * calls.c (expand_call): Likewise. * sh.c (sh_expand_prologue): For TARGET_HITACHI, don't push varargs / stdarg arguments. * sh.h (CPP_SPEC): Add -D__HITACHI__ for -mhitachi. (FUNCTION_ARG): For TARGET_HITACHI, don't pass unnamed arguments in registers. (PRETEND_OUTGOING_VARARGS_NAMED): Define. * va-sh.h (entire file): If __HITACHI__ is defined, use sh[123] flavour varargs. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@25440 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi: Update docs for constructors and destructors.law1999-02-211-3/+10
| | | | | | | And update comment in cp/decl2.c git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@25356 138bc75d-0d04-0410-961f-82ee72b054a4
* * function.c (assign_stack_temp_for_type): Clear best_plaw1999-02-101-0/+12
| | | | | | | | | | | | | | when an exact match is found. * i386.h (LOCAL_ALIGNMENT): Define. * function.c (assign_stack_local, assign_outer_stack_local): Use it. (assign_stack_temp_for_type): New function based on assign_stack_temp. (assign_stack_temp): Call it. (assign_temp): Use assign_stack_temp_for_type, not assign_stack_temp. * stmt.c: Use assign_temp, not assign_stack_temp. * tm.texi: Document LOCAL_ALIGNMENT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@25143 138bc75d-0d04-0410-961f-82ee72b054a4
* Merge in gcc2 snapshot 19980929. See gcc/ChangeLog and gcc/FSFChangeLog forlaw1999-01-271-1/+2
| | | | | | | details. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24879 138bc75d-0d04-0410-961f-82ee72b054a4
* * expr.c (MOVE_BY_PIECES_P): Define condition for deciding to useamacleod1999-01-211-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | move_by_pieces. (MOVE_MAX_PIECES): Define maximum number of bytes to move at once. (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_DECREMENT): Define defaults. (USE_STORE_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Define defaults. (move_by_pieces): Use new macros. (emit_block_move): Use new macros. (clear_by_pieces): Use new macros. (clear_storage): Use new macros. (emit_push_insn): Use new macros. (expand_expr): Use new macros. * config/sh/sh.h (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_DECREMENT): Define. (USE_STORE_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Define. (MOVE_BY_PIECES_P): Define based on alignment and TARGET_SMALLCODE. (MOVE_MAX_PIECES): move 8 bytes on SH4. * tm.texi(MOVE_BY_PIECES_P, MOVE_MAX_PIECES, USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_DECREMENT, USE_STORE_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Describe new macros. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24801 138bc75d-0d04-0410-961f-82ee72b054a4
* Thu Jan 21 14:13:31 1999 Vladimir N. Makarov <vmakarov@cygnus.com>vmakarov1999-01-211-9/+9
| | | | | | | | | | | | | * varasm.c (output_constant_pool): Use floor_log2 instead of exact_log2 for ASM_OUTPUT_ALIGN. * stor-layout.c (layout_type): Do machine-dependent extra alignment. * emit-rtl.c (operand_subword): Handle case when a subword outside the operand. * tm.texi (ROUND_TYPE_{SIZE,ALIGN}): More accurate descriptions of the macros. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24800 138bc75d-0d04-0410-961f-82ee72b054a4
* * pa.h (DONT_RECORD_EQUIVALENCE): Kill.law1999-01-061-11/+1
| | | | | | | | * local-alloc.c (update_equiv_regs): Corresponding changes. * tm.texi (DONT_RECORD_EQUIVALENCE): Kill. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24541 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi (SMALL_REGISTER_CLASSES): Make description match reality.crux1998-12-041-8/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24092 138bc75d-0d04-0410-961f-82ee72b054a4
* fix typobrendan1998-11-251-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23867 138bc75d-0d04-0410-961f-82ee72b054a4
* * regclass.c (init_reg_sets): Move code that calculates tablesamylaar1998-11-251-3/+11
| | | | | | | | dependent on reg_class_contents from here... (init_reg_sets_1): To here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23858 138bc75d-0d04-0410-961f-82ee72b054a4
* * cse.c (fold_rtx): Make autoincrement addressing mode tests belaw1998-11-241-1/+1
| | | | | | | | | | | | | | | | | | | runtime selectable. * expr.c (move_by_pieces): Similarly. (move_by_pieces_1, clear_by_pieces, clear_by_pieces_1): Similarly. * flow.c (find_auto_inc): Similarly. (try_pre_increment): Similarly. * loop.c (strength_reduce): Similarly. * regclass.c (auto_inc_dec_reg_p): Similarly. * regmove.c (try_auto_increment): Similarly. (fixup_match_1): Similarly. * rtl.h (HAVE_PRE_INCREMENT): Define if not already defined. (HAVE_PRE_DECREMENT): Similarly. (HAVE_POST_INCREMENT, HAVE_POST_DECREMENT): Similarly. sponding changes to all target header files. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23837 138bc75d-0d04-0410-961f-82ee72b054a4
* * expr.c (STACK_BYTES): Delete unused macro.law1998-11-191-5/+14
| | | | | | | | | | | | | | | | | | * calls.c: Provide default for PREFERRED_STACK_BOUNDARY. (STACK_BYTES): Use PREFERRED_STACK_BOUNDARY, not STACK_BOUNDARY. (expand_call): Likewise. (emit_library_call): Likewise. (emit_library_call_value): Likewise. * function.c: Provide default for PREFERRED_STACK_BOUNDARY. (STACK_BYTES): Use PREFERRED_STACK_BOUNDARY, not STACK_BOUNDARY. * explow.c: Provide default for PREFERRED_STACK_BOUNDARY. (round_push): Use PREFERRED_STACK_BOUNDARY, not STACK_BOUNDARY. (allocate_dynamic_stack_space): Likewise. * tm.texi (PREFERRED_STACK_BOUNDARY): Document new macro. (STACK_BOUNDARY): Update description to reflect the new situation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23730 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi (ASM_OUTPUT_MAX_SKIP_ALIGN): Document.law1998-10-261-0/+8
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23352 138bc75d-0d04-0410-961f-82ee72b054a4
* * flow.c (life_analysis_1): Do not clobber regs_ever_live afterlaw1998-10-161-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | reload. Never perform rescans of the insn chain after reload. (propagate_block): Do not delete insn or create new autoinc addressing modes after reload. * jump.c (jump_optimize): Unconditionally use the code that was previously conditional on PRESERVE_DEATH_INFO_REGNO_P. * reload1.c (reload): When reloading is finished, delete all REG_DEAD and REG_UNUSED notes. (emit_reload_insns): Delete all code that was conditional on PRESERVE_DEATH_INFO_REGNO_P. (no_longer_dead_regs): Delete variable. (reload_cse_delete_death_notes): Delete function. (reload_cse_no_longer_dead): Delete function. (reload_cse_regs_1): Delete all code to handle deletion of death notes. (reload_cse_noop_set_p): Likewise. (reload_cse_simplify_set): Likewise. (reload_cse_simplify_operands): Likewise. (reload_cse_move2add): Likewise. * reorg.c (used_spill_regs): Delete declaration. (max_label_num_after_reload): Delete declaration. (find_dead_or_set_registers): Don't assume that spill regs are dead at a CODE_LABEL. * rtlanal.c (dead_or_set_regno_p): Death notes are always accurate, even after reload. * sched.c (sched_analyze_insn): Likewise. (update_flow_info): Likewise. * haifa-sched.c (sched_analyze_insn): Likewise. (update_flow_info): Likewise. * tm.texi (PRESERVE_DEATH_INFO_REGNO_P): Delete documentation. * toplev.c (max_label_num_after_reload): Delete variable. (rest_of_compilation): Don't set max_label_num_after_reload. Call life_analysis after reload_cse_regs if optimizing. * config/gmicro/gmicro.h: Delete comment referring to PRESERVE_DEATH_INFO_REGNO_P. * config/i386/i386.h: Likewise. * config/m88k/m88k.h: Likewise. * config/m32r/m32r.h (PRESERVE_DEATH_INFO_REGNO_P): Delete definition. * config/sh/sh.h: Likewise. Accurate REG_DEAD notes after reload. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23120 138bc75d-0d04-0410-961f-82ee72b054a4
* * PROJECTS: Remove template friends.jason1998-10-031-8/+7
| | | | | | | | | * collect2.c (sort_ids): Remove unused variable. * tm.texi (MATH_LIBRARY): Document. (NEED_MATH_LIBRARY): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22792 138bc75d-0d04-0410-961f-82ee72b054a4
* Add support for #pragma pack(push,<n>) and #pragma pack(pop).nickc1998-10-011-4/+35
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22710 138bc75d-0d04-0410-961f-82ee72b054a4
* Add invocation of SET_DEFAULT_DECL_ATTRIBUTES, if defined.nickc1998-10-011-5/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22709 138bc75d-0d04-0410-961f-82ee72b054a4
* * regs.h (HARD_REGNO_CALL_PART_CLOBBERED): New macro.law1998-09-301-0/+11
| | | | | | | | | * local-alloc.c (find_free_reg): Use it. * global.c (find_reg): Likewise. * tm.texi: Document HARD_REGNO_CALL_PART_CLOBBERED. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22688 138bc75d-0d04-0410-961f-82ee72b054a4
* * regs.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.law1998-09-301-0/+8
| | | | | | | | * caller-save.c (init_caller_save): Use it. * tm.texi: Document HARD_REGNO_CALLER_SAVE_MODE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22682 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree.h (BUILT_IN_CALLER_RETURN_ADDRESS): Unused. Kill.rth1998-09-151-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (BUILT_IN_FP, BUILT_IN_SP, BUILT_IN_SET_RETURN_ADDR_REG): Kill. (BUILT_IN_EH_STUB_OLD, BUILT_IN_EH_STUB, BUILT_IN_SET_EH_REGS): Kill. (BUILT_IN_EH_RETURN, BUILT_IN_DWARF_CFA): New. * c-decl.c (init_decl_processing): Update accordingly. * expr.c (expand_builtin): Likewise. * cp/decl.c (init_decl_processing): Likewise. * rtl.h (global_rtl): Add cfa entry. (virtual_cfa_rtx, VIRTUAL_CFA_REGNUM): New. (LAST_VIRTUAL_REGISTER): Update. * emit-rtl.c (global_rtl): Add cfa entry. (init_emit): Initialize it. * function.c (cfa_offset): New. (instantiate_virtual_regs): Initialize it. (instantiate_virtual_regs_1): Instantiate virtual_cfa_rtx. (expand_function_end): Call expand_eh_return. * tm.texi (ARG_POINTER_CFA_OFFSET): New. * except.c (current_function_eh_stub_label): Kill. (current_function_eh_old_stub_label): Likwise; update all references. (expand_builtin_set_return_addr_reg): Kill. (expand_builtin_eh_stub_old, expand_builtin_eh_stub): Kill. (expand_builtin_set_eh_regs): Kill. (eh_regs): Produce a third reg for the actual handler address. (eh_return_context, eh_return_stack_adjust): New. (eh_return_handler, eh_return_stub_label): New. (init_eh_for_function): Initialize them. (expand_builtin_eh_return, expand_eh_return): New. * except.h: Update prototypes. * flow.c (find_basic_blocks_1): Update references to the stub label. * function.h (struct function): Kill stub label elements. * libgcc2.c (in_reg_window): For REG_SAVED_REG, check that the register number is one that would be in the previous window. Provide a dummy definition for non-windowed targets. (get_reg_addr): New function. (get_reg, put_reg, copy_reg): Use it. (__throw): Rely on in_reg_window, not INCOMING_REGNO. Kill stub generating code and use __builtin_eh_return. Use __builtin_dwarf_cfa. * alpha.c (alpha_eh_epilogue_sp_ofs): New. (alpha_init_expanders): Initialize it. (alpha_expand_epilogue): Use it. * alpha.h: Declare it. * alpha.md (eh_epilogue): New. * m68h.h (ARG_POINTER_CFA_OFFSET): New. * sparc.h (ARG_POINTER_CFA_OFFSET): New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22436 138bc75d-0d04-0410-961f-82ee72b054a4
* Change HANDLE_PRAGMA macro so that it will work with USE_CPPLIB.nickc1998-09-021-5/+35
| | | | | | | Add INSERT_ATTRIBUTES macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22165 138bc75d-0d04-0410-961f-82ee72b054a4
* * expr.c (expand_expr): Change ">" to ">=" making MOVE_RATIO uselaw1998-08-301-1/+5
| | | | | | | | | consistent. * tm.texi (Costs): Say MOVE_RATIO is number of mem-mem move *sequences* *below* which scalar moves will be used. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22107 138bc75d-0d04-0410-961f-82ee72b054a4
* * sh.h (GIV_SORT_CRITERION): Delete.amylaar1998-08-251-9/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@21966 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi (Misc): Fix typo "teh"...law1998-08-191-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@21850 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi (PIC): Fix typo "PPIC".law1998-08-191-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@21849 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi (Caller Saves): Say that DEFAULT_CALLER_SAVES has nolaw1998-08-191-3/+3
| | | | | | | | effect when -O2 and higher. * invoke.texi (Optimize Options): Likewise for -fcaller-saves. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@21848 138bc75d-0d04-0410-961f-82ee72b054a4
* Add --help option.nickc1998-07-131-12/+15
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@21109 138bc75d-0d04-0410-961f-82ee72b054a4
* * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Handle addresses created bylaw1998-07-081-0/+4
| | | | | | | | | LEGITIMIZE_RELOAD_ADDRESS. * tm.texi (LEGITIMIZE_RELOAD_ADDRESS): Note that this macro must be able to handle addresses created by previous invocations of the macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@21014 138bc75d-0d04-0410-961f-82ee72b054a4
* * expr.h (STACK_SIZE_MODE): New macro.dje1998-07-021-4/+15
| | | | | | | | | | | | | | | | | * explow.c (allocate_dynamic_stack_space): Use it for mode of allocate_stack pattern increment operand. * tm.texi (STACK_SAVEAREA_MODE, STACK_SIZE_MODE): Document. * md.texi (stack_save_block, ...): Reflect use of macro. * rs6000.h (PROMOTE_MODE): Always promote to word_mode. (PROMOTE_FUNCTION_ARGS): Define. (PROMOTE_FUNCTION_RETURN): Define. (FUNCTION_VALUE): Promote to word_mode if smaller. Convert to gen_rtx_FOO. * rs6000.md (call_indirect): Store doubleword in 64-bit mode. Convert to gen_rtx_FOO. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@20893 138bc75d-0d04-0410-961f-82ee72b054a4
* tm.texi: document STACK_SAVEAREA_MODE.dje1998-06-301-0/+13
| | | | | | | md.texi: update save_stack_* pattern description. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@20844 138bc75d-0d04-0410-961f-82ee72b054a4
* * Merge from gcc2 June 9, 1998 snapshot. See ChangeLog.13 forlaw1998-06-291-0/+21
| | | | | | | details. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@20808 138bc75d-0d04-0410-961f-82ee72b054a4
* * tm.texi (NEED_MATH_LIBRARY): Document new target macro.law1998-06-271-0/+9
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@20766 138bc75d-0d04-0410-961f-82ee72b054a4
* Add hooks for the machine to override the sorting of the ready list and ↵meissner1998-06-261-0/+32
| | | | | | variable issue rates git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@20740 138bc75d-0d04-0410-961f-82ee72b054a4
* * expr.c (check_max_integer_computation_mode): New function.law1998-06-171-0/+8
| | | | | | | | | | | (expand_expr): Avoid integer computations in modes wider than MAX_INTEGER_COMPUTATION_MODE. * fold-const.c (fold): Likewise. * tree.h (check_max_integer_computation_mode): Declare. * tm.texi (MAX_INTEGER_COMPUTATION_MODE): Document it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@20538 138bc75d-0d04-0410-961f-82ee72b054a4
* * expr.c (expand_builtin_setjmp): Handle BUILTIN_SETJMP_FRAME_VALUE.law1998-06-021-3/+11
| | | | | | | | | | | * i960.h (SETUP_FRAME_ADDRESSES, BUILTIN_SETJMP_FRAME_VALUE): Define. * i960.md (ret, flush_register_windows): Define. (nonlocal_goto): Likewise. Nested function nonlocal gotos don't work yet. * tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Document new macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@20192 138bc75d-0d04-0410-961f-82ee72b054a4
* * final.c (JUMP_TABLES_IN_TEXT_SECTION): Provide a default value.law1998-05-221-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | (shorten_branches, final_scan_insn): Test value of JUMP_TABLES_IN_TEXT_SECTION instead of just testing whether it is defined. * tm.texi (JUMP_TABLES_IN_TEXT_SECTION): Corresponding changes. * arm/coff.h: Define JUMP_TABLES_IN_TEXT_SECTION to 1. coff.h: Likewise. * i386/386bsd.h: Likewise. * i386/freebsd-elf.h: Likewise. * i386/freebsd.h: Likewise. * i386/netbsd.h: Likewise. * i386/ptx4-i.h: Likewise. * i386/sysv4.h: Likewise. * pa/pa.h: Likewise. * rs6000/linux.h: Likewise. * rs6000/rs6000.h: Likewise. * sh/sh.h: Likewise. * sparc/sp64-elf.h: Likewise. * v850/v850.h: Likewise. * rs6000/sysv4.h: Define JUMP_TABLES_IN_TEXT_SECTION to 0. * i386/linux.h: Define JUMP_TABLES_IN_TEXT_SECTION to (flag_pic). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@19940 138bc75d-0d04-0410-961f-82ee72b054a4