- 15 Dec, 1997 12 commits
-
-
* reload.h, reload1.c (eliminate_regs), caller-save.c, dbxout.c, dwarfout.c, dwarf2out.c, reload.c, sdbout.c: Revert March 15 change. * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the SUBREG_REG if the word count is unchanged. * reload1.c (eliminate_regs) [case SET]: If W_R_O, preserve subregs of identical word size for push_reload. From-SVN: r17105
Richard Henderson committed -
toplev.c (rest_of_compilation): Don't call save_for_inline_copy if all we're doing is dealing with -Wreturn-type. * toplev.c (rest_of_compilation): Don't call save_for_inline_copy if all we're doing is dealing with -Wreturn-type. From-SVN: r17104
Mark Mitchell committed -
* alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2): Use and 255 instead of zapnot 1, since it schedules better. From-SVN: r17103
Richard Henderson committed -
From-SVN: r17102
Richard Henderson committed -
* stmt.c (expand_asm_operands): If an ASM has no outputs, then treat it as volatile. From-SVN: r17100
Jeffrey A Law committed -
From-SVN: r17099
Jeff Law committed -
* cvt.c (cp_convert_to_pointer): Fix base conversion of pm's. * pt.c (type_unification_real): Change __null to type void* with a warning. From-SVN: r17098
Jason Merrill committed -
Mirror sched.c change into haifa-sched.c From-SVN: r17097
Jeff Law committed -
From-SVN: r17096
Jeff Law committed -
call.c (implicit_conversion): Don't call build_user_type_conversion_1 with a NULL expr, since it will crash. * call.c (implicit_conversion): Don't call build_user_type_conversion_1 with a NULL expr, since it will crash. * pt.c (unify): Don't try to unify array bounds if either array is unbounded. From-SVN: r17095
Mark Mitchell committed -
From-SVN: r17094
Jason Merrill committed -
From-SVN: r17093
Jason Merrill committed
-
- 13 Dec, 1997 3 commits
-
-
From-SVN: r17090
Per Bothner committed -
flow.c (flow_analysis): Be consistent with find_basic_blocks in determining when a new basic block starts. * flow.c (flow_analysis): Be consistent with find_basic_blocks in determining when a new basic block starts. From-SVN: r17085
Jason Merrill committed -
* errfn.c (cp_pedwarn, cp_pedwarn_at, cp_error_at, cp_warning_at): Replace extern decls with casts. * decl.c (expand_start_early_try_stmts): Don't mess with a sequence. Update last_parm_cleanup_insn. (store_after_parms): Remove. * cp-tree.h: Adjust. Fixes eh{39,40}.C From-SVN: r17083
Jason Merrill committed
-
- 12 Dec, 1997 25 commits
-
-
From-SVN: r17082
Jason Merrill committed -
integrate.c (initialize_for_inline): In DECL_RTL of a PARM_DECL, look inside a (mem (addressof (mem ...))). * integrate.c (initialize_for_inline): In DECL_RTL of a PARM_DECL, look inside a (mem (addressof (mem ...))). From-SVN: r17075
Richard Kenner committed -
From-SVN: r17074
Jeff Law committed -
* alpha/osf2or3.h (LIB_SPEC): Restore missing defn. Lost in 11/02 merge. * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS. * pa.md (iorsi3): Add missing args to *_operand calls. Simple bugs shown up by recent changes. From-SVN: r17071
Jason Merrill committed -
* except.c (call_get_eh_context): Don't mess with sequences. (emit_eh_context): Include the call in the sequence here. From-SVN: r17070
Jason Merrill committed -
From-SVN: r17069
Jeff Law committed -
From-SVN: r17068
Jeff Law committed -
From-SVN: r17067
Jeff Law committed -
collect2.c (write_c_file_glob): Allocate initial frame object in static storage and pass its address. * collect2.c (write_c_file_glob): Allocate initial frame object in static storage and pass its address. From-SVN: r17066
Paul Eggert committed -
* except.c (call_get_eh_context): Don't take a parm. Put the call at the top of the function. (emit_eh_context): Adjust. (get_eh_context): Replace with former use_eh_context. (get_eh_context_once, get_saved_pc_ref): Remove. (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove. * except.h: Adjust. * integrate.c (expand_inline_function): Adjust. * toplev.c (rest_of_compilation): Don't call emit_unwinder. tidy tidy tidy From-SVN: r17065
Jason Merrill committed -
* i386/xm-go32.h (EXECUTABLE_SUFFIX): Define. (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise. From-SVN: r17064
Marc Lehmann committed -
* i386/linux.h (STACK_BOUNDARY): Define as 64 for glibc2. * i386/gnu.h (STACK_BOUNDARY): Define as 64. From-SVN: r17063
Dave Love committed -
* fixincludes (str{len,spn,cspn} return value): Handle different layout on sysV88. (hypot): Provide a fake for hypot which is broken on m88k-motorola-sysv3. From-SVN: r17062
Manfred Hollstein committed -
tree.c, tree.h: Change tree_code_type, tree_code_length, and tree_code_name from pointers to arrays. * tree.c, tree.h: Change tree_code_type, tree_code_length, and tree_code_name from pointers to arrays. * tree.c: Remove standard_tree_code_* variables, no longer used. * print-tree.c: Remove declaration of tree_code_name. * cp/lex.c (init_lex): Update for tree_code_* changes. * objc/objc-act.c (init_objc): Likewise. * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code changes. From-SVN: r17061
John F. Carr committed -
From-SVN: r17060
Fred Fish committed -
From-SVN: r17059
Fred Fish committed -
* m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly old and broken Sun3 assemblers. Newer versions handle large offsets correctly as does the GNU assembler. Co-Authored-By: Toon Moene <toon@moene.indiv.nluug.nl> From-SVN: r17058
Jeffrey A Law committed -
* objc/objc-act.c (lang_report_error_function): Disable. * objc/objc-parse.y: Include "output.h". (yyerror): Remove redundant decl. (yyprint): Fix prototype. (apply_args_register_offset): Remove redundant decl. (get_file_function_name): Likewise. From-SVN: r17057
H.J. Lu committed -
* decl2.c (comdat_linkage): Also set DECL_COMDAT. (finish_file): Check DECL_COMDAT instead of weak|one_only. (import_export_vtable): Use make_decl_one_only instead of comdat_linkage for win32 tweak. (import_export_decl): Likewise. * pt.c (mark_decl_instantiated): Likewise. Fix libgcc with -O3. From-SVN: r17056
Jason Merrill committed -
* flow.c (find_basic_blocks): A CALL_INSN that can throw starts a new basic block. (find_basic_blocks_1): Likewise. From-SVN: r17055
Jason Merrill committed -
* except.c (use_eh_context): Don't copy_rtx a REG. (emit_throw): Lose old unwinder support. (expand_internal_throw): Likewise. * libgcc2.c (struct eh_context): Likewise. (new_eh_context): Likewise. (__get_eh_info): Lose redundant cast. (__get_dynamic_handler_chain): Likewise. (__get_saved_pc): Lose. Lose all old unwinder support code. * decl2.c (finish_file): Lose call to expand_builtin_throw. * except.c (expand_builtin_throw): Remove. * cp-tree.h: Remove ptr_ptr_type_node. * decl.c: Likewise. From-SVN: r17054
Jason Merrill committed -
Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com> Thread-safe EH support for pthreads, DCE threads and Solaris threads. * integrate.c (expand_inline_function): If the inline fn uses eh context, make sure that the current fn has one. * toplev.c (rest_of_compilation): Call emit_eh_context. * except.c (use_eh_context): New fn. (get_eh_context_once): New fn. (call_get_eh_context): New fn. (emit_eh_context): New fn. (get_eh_context): Call either get_eh_context_once or call_get_eh_context, depending on what we have. (get_dynamic_handler_chain): Call get_eh_context_once. * except.h: Prototypes for fns above. * optabs.c (get_eh_context_libfunc): Removed. (init_optabs): Don't initialize it. * expr.h (get_eh_context_libfunc): Removed. * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT. * config/pa/pa.h (CPP_SPEC): Support for -threads. * config/pa/pa-hpux10.h (LIB_SPEC): Ditto. * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): New multilib for -threads. * config/sparc/t-sol2: Added multilibs for -threads and made -pthreads alias to it. * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC): Added -threads and -pthreads options. * libgcc-thr.h: New file. * libgcc2.c: (__get_cpp_eh_context): Removed. (struct cpp_eh_context): Removed. (struct eh_context): Replaced cpp_eh_context with generic language specific pointer. (__get_eh_info): New function. (__throw): Check eh_context::info. (__sjthrow): Ditto. * libgcc2.c: Include libgcc-thr.h. (new_eh_context, __get_eh_context, eh_pthread_initialize, eh_context_initialize, eh_context_static, eh_context_specific, eh_context_free): New functions. (get_eh_context, eh_context_key): New variables. (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use get_eh_context to get the context. (longjmp): Move the declaration inside #ifdef DONT_USE_BUILTIN_SETJMP. * frame.c: Include libgcc-thr.h. (object_mutex): Mutex to protect the object list. (find_fde, __register_frame, __register_frame_table, __deregister_frame): Hold the lock while accessing objects. * except.h (get_eh_context): Declare. * except.c (current_function_ehc): Define. (current_function_dhc, current_function_dcc): Removed. (get_eh_context): New function. (get_dynamic_handler_chain): Use get_eh_context. (get_saved_pc_ref): Ditto. (get_dynamic_cleanup_chain): Removed references to current_function_dcc. (save_eh_status, restore_eh_status): Save and restore current_function_ehc instead. * optabs.c (get_eh_context_libfunc): New variable. (init_optabs): Initialize it. * expr.h: Declare get_eh_context_libfunc. * function.h (struct function): Replaced dhc and dcc with ehc. * except.c (get_saved_pc_ref): New functions. (eh_saved_pc_rtx, eh_saved_pc): Deleted. (expand_internal_throw_indirect): Use get_saved_pc_ref() instead of eh_saved_pc. (end_eh_unwinder): Likewise. (init_eh): Remove initialization of eh_saved_pc. * optabs.c (get_saved_pc_libfunc): New variable. (init_optabs): Initialize it. * expr.h: Declare get_saved_pc_libfunc. * except.h (eh_saved_pc_rtx): Deleted. (get_saved_pc_ref): Declared. From Scott Snyder <snyder@d0sgif.fnal.gov>: * libgcc2.c (__get_saved_pc): New. (__eh_type, __eh_pc): Deleted. (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc. (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside this fcn. From-SVN: r17053
Teemu Torma committed -
Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com> Thread-safe EH support for pthreads, DCE threads and Solaris threads. * integrate.c (expand_inline_function): If the inline fn uses eh context, make sure that the current fn has one. * toplev.c (rest_of_compilation): Call emit_eh_context. * except.c (use_eh_context): New fn. (get_eh_context_once): New fn. (call_get_eh_context): New fn. (emit_eh_context): New fn. (get_eh_context): Call either get_eh_context_once or call_get_eh_context, depending on what we have. (get_dynamic_handler_chain): Call get_eh_context_once. * except.h: Prototypes for fns above. * optabs.c (get_eh_context_libfunc): Removed. (init_optabs): Don't initialize it. * expr.h (get_eh_context_libfunc): Removed. * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT. * config/pa/pa.h (CPP_SPEC): Support for -threads. * config/pa/pa-hpux10.h (LIB_SPEC): Ditto. * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): New multilib for -threads. * config/sparc/t-sol2: Added multilibs for -threads and made -pthreads alias to it. * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC): Added -threads and -pthreads options. * libgcc-thr.h: New file. * libgcc2.c: (__get_cpp_eh_context): Removed. (struct cpp_eh_context): Removed. (struct eh_context): Replaced cpp_eh_context with generic language specific pointer. (__get_eh_info): New function. (__throw): Check eh_context::info. (__sjthrow): Ditto. * libgcc2.c: Include libgcc-thr.h. (new_eh_context, __get_eh_context, eh_pthread_initialize, eh_context_initialize, eh_context_static, eh_context_specific, eh_context_free): New functions. (get_eh_context, eh_context_key): New variables. (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use get_eh_context to get the context. (longjmp): Move the declaration inside #ifdef DONT_USE_BUILTIN_SETJMP. * frame.c: Include libgcc-thr.h. (object_mutex): Mutex to protect the object list. (find_fde, __register_frame, __register_frame_table, __deregister_frame): Hold the lock while accessing objects. * except.h (get_eh_context): Declare. * except.c (current_function_ehc): Define. (current_function_dhc, current_function_dcc): Removed. (get_eh_context): New function. (get_dynamic_handler_chain): Use get_eh_context. (get_saved_pc_ref): Ditto. (get_dynamic_cleanup_chain): Removed references to current_function_dcc. (save_eh_status, restore_eh_status): Save and restore current_function_ehc instead. * optabs.c (get_eh_context_libfunc): New variable. (init_optabs): Initialize it. * expr.h: Declare get_eh_context_libfunc. * function.h (struct function): Replaced dhc and dcc with ehc. * except.c (get_saved_pc_ref): New functions. (eh_saved_pc_rtx, eh_saved_pc): Deleted. (expand_internal_throw_indirect): Use get_saved_pc_ref() instead of eh_saved_pc. (end_eh_unwinder): Likewise. (init_eh): Remove initialization of eh_saved_pc. * optabs.c (get_saved_pc_libfunc): New variable. (init_optabs): Initialize it. * expr.h: Declare get_saved_pc_libfunc. * except.h (eh_saved_pc_rtx): Deleted. (get_saved_pc_ref): Declared. From Scott Snyder <snyder@d0sgif.fnal.gov>: * libgcc2.c (__get_saved_pc): New. (__eh_type, __eh_pc): Deleted. (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc. (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside this fcn. cp/: Thu Dec 11 20:43:33 1997 Teemu Torma <tot@trema.com> * decl.c (ptr_ptr_type_node): Define. (init_decl_processing): Initialize it. * cp-tree.h: Declare it. * exception.cc (__cp_exception_info): Use __get_eh_info. (__cp_push_exception): Ditto. (__cp_pop_exception): Ditto. From Scott Snyder <snyder@d0sgif.fnal.gov>: * except.c (expand_builtin_throw): Use get_saved_pc_ref instead of saved_pc. (init_exception_processing): Removed saved_pc initialization. From-SVN: r17052
Teemu Torma committed -
From-SVN: r17051
Jeff Law committed -
* sparc/sol2.h: Use 64 bit multiply and divide functions in Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE as 0. From-SVN: r17050
John F. Carr committed
-