| Sat Aug 2 18:50:43 1997 Paul Eggert <eggert@twinsun.com> |
| |
| * tree.c (int_fits_type_p): Negative ints never fit unsigned |
| types, and unsigned ints with top-bit-set never fit signed types. |
| |
| Sat Aug 2 16:25:43 1997 Per Bothner <bothner@frobnitz.gnu.ai.mit.edu> |
| |
| * Makefile.in (EXTRA_C_OBJS): Removed. |
| (C_AND_OBJC_OBJS): New. Subsumes EXTRA_C_OBJS and OBJC_CCOMMON. |
| * objc/Make-lang.in (OBJC_CCOMMON): Removed. |
| |
| Sat Aug 2 16:11:57 1997 Doug Evans <dje@cygnus.com> |
| |
| * configure.in: Build .gdbinit for top level build dir here. |
| (AC_OUTPUT): Pass oldstyle_subdirs to configure.lang. |
| * configure.lang: Fix building of .gdbinit for oldstyle lang subdirs. |
| |
| Sat Aug 2 13:48:15 1997 Ken Raeburn <raeburn@cygnus.com> |
| |
| * cse.c (cse_insn): Ignore paradoxical SUBREGs unless we are |
| looking for such. |
| |
| Sat Aug 2 13:25:33 1997 Tristan Gingold (gingold@email.enst.fr) |
| |
| * calls.c (expand_call): If -fcheck-memory-usage, use pseudo-register, |
| check indirectly called function is executable, and set rights of |
| memory for aggregate as write only. |
| (store_one_arg): If -fcheck-memory-usage, set rights for pushed |
| stack argument. |
| * c-decl.c (init_decl_processing): Add |
| __builtin_aggregate_incoming_address. |
| * explow.c (expr_size): Call expand_expr with appropriate flag. |
| * expr.c (expand_builtin, case BUILT_IN_AGGREGATE_INCOMING_ADDRESS): |
| New case. |
| (expand_assignment, expand_expr, emit_push_insn, store_expr): |
| Insert calls to chkr_check_addr, chkr_set_right, and chkr_copy_bitmap |
| when -fcheck-memory-usage. |
| (get_push_address, get_memory_usage_from_modifier): New functions. |
| * expr.h: Add expand_modifier flags. |
| (chkr_*_libfunc): New decls. |
| (memory_use_mode): New declaration. |
| * flags.h (flag_check_memory_usage, flag_prefix_function_name): New |
| declaration. |
| * function.c (put_var_into_stack, assign_parms): If |
| -fcheck-memory-usage, set the rights of pushed variable. |
| * optabs.c (chkr_{check_addr,set_right}_libfunc): New definitions. |
| (chkr_{copy_bitmap,check_exec}_libfunc): Likewise. |
| (init_optabs): Initialize these chkr_*_libfunc. |
| * stmt.c (expand_computed_goto): If -fcheck-memory-usage, check that |
| computed address of a goto is executable. |
| (expand_asm, expand_asm_operands): If -fcheck-memory-usage, |
| disallow asm statments. |
| * toplev.c (flag_check_memory_usage, flag_prefix_function_name): New |
| variable. |
| (f_options): Add `check-memory-usage' and `prefix_function_name'. |
| (main): Disable `-fomit-frame-pointer' if `-fcheck-memory-usage' is set |
| and the machine can't debug without the frame pointer. |
| * tree.h (built_in_function): Add BUILT_IN_AGGREGATE_INCOMING_ADDRESS. |
| * varasm.c (make_function_rtl, make_decl_rtl): Add a prefix when |
| flag_prefix_function_name_usage is set. |
| (assemble_name): Strip the CHKR_PREFIX. |
| * alpha.c (alpha_builtin_saveregs): If -fcheck-memory-usage, |
| set rights of saved registers. |
| * clipper.c (clipper_builtin_saveregs): Likewise. |
| * m88k.c (m88k_builtin_saveregs): Likewise. |
| * pa.c (hppa_builtin_saveregs): Likewise. |
| * sparc.c (sparc_builtin_saveregs): Likewise. |
| |
| Sat Aug 2 08:01:12 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * c-decl.c (grokdeclarator): Give error for `long double' and |
| refine text of some error messages. |
| |
| * alpha.h (FLOAT_VALUE_TYPE, INTIFY, FLOATIFY, FLOAT_ARG_TYPE): Define. |
| * i860.h (FLOAT_VALUE_TYPE): Fix typo; was FLOAT_TYPE_VALLUE. |
| |
| * calls.c (store_one_arg): Allow stack_slot to be SP in |
| ARGS_GROW_DOWNWARD case. |
| |
| * c-decl.c (parmlist_tags_warning): Only suppress warning on |
| union if anonymous. |
| |
| * libgcc2.c (_trampoline): Rework last change; both getpagesize |
| and mprotect are in cygwin32. |
| |
| * reload1.c (reload): Add IN_ADDR to IN_ADDR_ADDR when computing |
| needs since they conflict. |
| |
| * print-rtl.c (indent): Move to file level; was static in print_rtx. |
| (print_inline_rtx): New function. |
| * reload.c (debug_reload): Rework to make output more compact. |
| |
| * dwarfout.c (output_compile_unit_die): Add support for Pascal. |
| * dwarf2out.c (gen_compile_unit_die): Likewise. |
| |
| * c-typeck.c (lvalue_p, case BIND_EXPR, RTL_EXPR): Return 1 if array. |
| |
| * Makefile.in (OBJC_OBJC): Delete from here. |
| |
| * varasm.c (compare_constant_1, case STRING_CST): Compare TYPE_MODE. |
| (record_constant_1, case STRING_CST): Record TYPE_MODE. |
| |
| * tree.c (contains_this_placeholder_p): Delete. |
| (contains_placeholder_p): Now contains code from above function. |
| (contains_placeholder_p, case 'r'): Don't look at offset info. |
| * expr.c (expand_expr, case PLACEHOLDER_EXPR): Find innermost |
| matching and don't check contains_placeholder_p. |
| |
| Fri Aug 1 17:15:07 1997 Per Bothner <bothner@cygnus.com> |
| |
| * objc/objc-act.c (lang_init): Don't check_newline #if USE_CPPLIB. |
| * c-lex.c (lang_init): Remove (recently moved here). |
| * c-lang.c (lang_init): Restore, but add #if !USE_CPPLIB. |
| |
| Fri Aug 1 11:26:45 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.c (pa_reorg): Explode ADDR_DIFF_VEC insns too. |
| |
| Thu Jul 31 19:37:22 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * libgcc2.c (getpagesize): Don't compile if __CYGWIN32__. |
| |
| Thu Jul 31 16:04:42 1997 Stan Cox <coxs@dg-rtp.dg.com> |
| |
| * i386.c (output_to_reg, output_fix_trunc): Use scratch memory, |
| if available, instead of dynamically extending the stack. |
| (put_condition_code, print_operand): Added reverse_cc to reverse the |
| comparison when $ah is accessed directly instead of using eflags |
| |
| * i386.md (*trunc*): Use scratch memory for output_fix_trunc. |
| (movsicc_1, movhicc_1) Change alternative 3 to: |
| jCC L1; mov; jmp L2; L1:mov; L2: |
| (movsfcc, movdfcc, movxfcc): Force constant operands to memory. |
| (movsfcc_1, movdfcc_1, movxfcc_1): Change alternative 3 as above. |
| |
| Thu Jul 31 16:04:42 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * i386.h (MAX_FIXED_MODE_SIZE): Define. |
| |
| Thu Jul 31 16:04:42 1997 Robert Lipe <robertl@dgii.com> |
| |
| * i386/sco5.h (SWITCHES_NEED_SPACES) Define. |
| Required by the COFF (but not ELF) linker. |
| |
| Wed Jul 30 15:03:52 1997 Per Bothner <bothner@cygnus.com> |
| |
| * demangle.h (DMGL_JAVA): New option to request Java demangling. |
| * cplus-dem.c: Various changes to produce Java output when passed |
| DMGL_JAVA. Thus "::" becomes "." and "JArray<Foo>" becomes "Foo[]". |
| (main): Support --java and -j flags to set DMGL_JAVA. |
| |
| Wed Jul 30 08:56:08 1997 Philip Blundell <Philip.Blundell@pobox.com> |
| |
| * configure.in (arm-*-*): Replace with arm-*-aout. |
| * arm/aout.h (SET_ASM_OP): Define by default. |
| * arm/riscix.h (SET_ASM_OP: Undefine. |
| * arm.h (CPP_SPEC): Add %(subtarget_cpp_spec). |
| (SUBTARGET_CPP_SPEC): New macro. |
| * arm/linux.h: Include aout.h rather than arm.h directly. |
| (TARGET_CPU_DEFAULT): Define. |
| ({ASM,CPP}_SPEC): Remove. |
| * arm/t-linux (MULTILIB_OPTIONS): Use -mapcs-NN instead of -mN. |
| (LIB1ASMSRC): Use generic ARM version. |
| (CROSS_LIBGCC1): Define. |
| * arm/lib1funcs-linux.asm: Remove. |
| |
| Tue Jul 29 17:57:47 1997 Per Bothner <bothner@cygnus.com> |
| |
| * Add hooks for using autconf-style Makefile.in in language subdirs. |
| * configure.in (all_outputs, oldstyle_subdirs): New variables. |
| Pass all_outputs to AC_OUTPUT. |
| * configure.lang: Only iterate over oldstyle_subdirs. |
| |
| * Patches to use cpplib with cc1 #if USE_CPPLIB. |
| * configure.in (--enable-c-cpplib): New option. |
| (extra_c_flags, extra_c_objs): New variables. |
| * Makefile.in (EXTRA_C_OBJS): New variable. |
| (INTERNAL_CFLAGS): Add @extra_c_flags@. |
| (C_OBJS): Add $(EXTRA_C_OBJS). |
| * c-lex.c (generally): Replace getc and ungetc by macros GETC and |
| UNGETC. Avoid explicit references to finput. |
| (yy_get_token): New function, that calls cpp_get_token. |
| (init_parse): New function - calls init_lex. |
| (finish_parse): New function (called by compile_file). |
| (GET_DIRECTIVE_LINE): New macro wrapper replaces get_directive_line. |
| (lang_init): Don't check_newline - already know main_input_filename. |
| (handle_sysv_pragma): Remove FILE* parameter. |
| * toplev.c (finput): Remove #if USE_CPPLIB. |
| (compile_file): #if USE_CPPLIB don't open input file here, |
| do it in cpp_start_read. Call init_parse instead of init_lex. |
| At end, call finish_parse instead of fclose(finput). |
| |
| Mon Jul 28 15:48:29 1997 Brendan Kehoe <brendan@cygnus.com> |
| |
| * integrate.c (expand_inline_function): Use xmalloc instead of |
| alloca for the LABEL_MAP. |
| (save_for_inline_copying): Likewise. |
| |
| Mon Jul 28 11:22:16 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * toplev.c (compile_file): Also emit any deferred TREE_PUBLIC inlines. |
| (rest_of_compilation): Use decl_printable_name instead of DECL_NAME |
| to identify functions in the RTL dump files. |
| |
| * dwarf2out.c (add_location_or_const_value_attribute): |
| leaf_renumber_regs_insn. Also eliminate_regs here. |
| (add_AT_location_description): Not here. Don't emit anything |
| for a variable that has been optimized away. |
| (add_const_value_attribute): Likewise. |
| |
| * dwarfout.c (location_or_const_value_attribute): |
| leaf_renumber_regs_insn. Also eliminate_regs here. |
| (location_attribute): Not here. |
| |
| * stor-layout.c (layout_type): Fix ancient code to match ancient |
| comment. Use mode of field for one-field structs. |
| |
| Sun Jul 27 12:09:02 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * function.c (put_var_into_stack, trampoline_address): Treat |
| inline_function_decl like current_function_decl. |
| * expr.c (expand_expr, case LABEL_DECL): Likewise. |
| (expand_expr, case SAVE_EXPR): Handle top-level SAVE_EXPR by |
| moving into current function; abort if in incorrect context. |
| * fold-const.c (fold_range_test, fold): Avoid making SAVE_EXPR |
| if at top level. |
| |
| * dwarfout.c (ASM_OUTPUT_SOURCE_FILENAME): Delete default value. |
| |
| * alpha.h (TARGET_SWITCHES): Add -mno-byte. |
| |
| * expr.c (get_inner_unaligned_p): Deleted. |
| (expand_assignment): Remove special-case of constant array. |
| (expand_expr, case ARRAY_REF): Likewise, and clean up remaining code. |
| |
| * explow.c (probe_stack_range): Do probing with loop if more |
| than a small number. |
| |
| Fri Jul 25 15:42:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * configure.in: Finish fixing calculation if default thread |
| support is enabled. |
| |
| Fri Jul 25 15:30:09 1997 Doug Evans <dje@cygnus.com> |
| |
| * Makefile.in (native): Depend on config.h. |
| (gcc.o): Depend on Makefile, not config.status. |
| |
| Fri Jul 25 10:56:50 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.c (pa_reorg): If TARGET_BIG_SWITCH, then do not explode |
| ADDR_VEC insns. Slightly rework code which explodes ADDR_VEC |
| insns. |
| * pa.h (TARGET_BIG_SWITCH): Define. |
| (TARGET_SWITCHES): Add "big-switch" and "no-big-switch". |
| (CASE_VECTOR_MODE): Use TI or DI depending on TARGET_BIG_SWITCH. |
| (CASE_DROPS_THROUGH): Remove definition. |
| (ASM_OUTPUT_ADDR_VEC_ELT): Rewrite to handle TARGET_BIG_SWITCH. |
| (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise. |
| * pa.md (casesi): Rework to avoid some potential long branch |
| problems (also makes generated code faster!). Handle |
| TARGET_BIG_SWITCH. |
| (casesi0): Corresponding changes. |
| |
| Fri Jul 25 08:36:47 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * calls.c: (expand_call): If -fstack-check and temp needed |
| for arg is too large, use alloca. |
| * expr.c (expand_expr, case MODIFY_EXPR): Don't preexpand calls |
| if LHS is an indirect via a constant pointer. |
| |
| Thu Jul 24 21:49:11 1997 Pat Rankin <rankin@eql.caltech.edu> |
| |
| * bitmap.c (bitmap_operation): Reset CURRENT on deferred deletion. |
| |
| Wed Jul 23 23:52:14 1997 Chris Smith <csmith@convex.hp.com> |
| |
| * convex.h (CHECK_FLOAT_VALUE): Fix OVERFLOW capitalization. |
| |
| Wed Jul 23 13:00:47 1997 Richard Earnshaw <rearnsha@cambridge.arm.com> |
| |
| * configure.in (arm-*-netbsd*): Fix typo setting tmake_file. |
| |
| Wed Jul 23 06:39:35 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * configure.in (alpha*): Put quotes around MASK_GAS. |
| |
| Tue Jul 22 15:24:45 1997 Brendan Kehoe <brendan@cygnus.com> |
| |
| * tree.c (array_type_nelts): Make sure the domain of TYPE is set |
| before we try to use it. |
| |
| Tue Jul 22 12:26:13 1997 Doug Evans <dje@cygnus.com> |
| |
| * sparc.c (gen_v9_scc): Handle early clobber of result. |
| * sparc.md (seqdi_special): Don't clobber %xcc. |
| (snedi_special, seqdi_special_trunc, snedi_special_trunc): Likewise. |
| (snedi_zero, neg_snedi_zero, seqdi_zero, neg_seqdi_zero): Likewise. |
| (snedi_zero_trunc, seqdi_zero_trunc): Likewise. Renamed from ..._sp64. |
| (snedi_zero_trunc_sp32, seqdi_zero_trunc_sp32): Delete. |
| |
| * Makefile.in (Makefile): Pass xmake_file, tmake_file to |
| configure.frag |
| (distclean): Delete Make-host, Make-target. |
| * configure.in (host_overrides): Set to Make-host. |
| (dep_host_xmakefile): Loop over all elements in host_make_file. |
| (target_overrides): Set to Make-target. |
| (dep_tmake_file): Loop over all elements in tmake_file. |
| (configure.frag): Pass dep_host_xmake_file, dep_tmake_file. |
| * configure.frag: New arguments xmake_files, tmake_files. |
| Build Make-host, Make-target. |
| |
| Mon Jul 21 23:17:44 1997 Paul Eggert <eggert@twinsun.com> |
| |
| * objc/Make-lang.in, objc/Makefile.in: Comment out lines containing |
| just formfeeds. |
| |
| Mon Jul 21 14:05:46 1997 Doug Evans <dje@cygnus.com> |
| |
| * Makefile.in (Makefile): Depend on config.status instead |
| of configure. |
| (config.status): Depend on configure. Run config.status --recheck |
| if out of date. |
| (cstamp-h.in): Use echo instead of touch. |
| |
| * reload1.c (reload_cse_mem_conflict_p): Restore handling of |
| (mem:BLK const0_rtx) meaning all memory is clobbered. |
| |
| Mon Jul 21 06:20:10 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * m68k.md (iorsi_zexthi_ashl16): Mark output operand as earlyclobber. |
| |
| Sun Jul 20 06:11:30 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * configure.in (alpha*-*-*): Set cpu_type to alpha. |
| Change "alpha-" to "alpha*-" in all entries. |
| Set target_cpu_default for ev5 and ev56 systems. |
| Use symbolic names for target_cpu_default. |
| * alpha.c (override_options): Set default for alpha_cpu |
| from TARGET_CPU_DEFAULT. |
| * alpha.h (MASK_CPU_EV5): New macro. |
| |
| * tree.c (contains_placeholder_p): Call contains_this_placeholder_p. |
| (contains_this_placeholder_p): Renamed from contains_placeholder_p. |
| Added new arg, PL. |
| Rework to make more consistent, check more codes, and avoid |
| undefined fields. |
| * expr.c (expand_expr, case PLACEHOLDER_EXPR): Pick outermost |
| object in placeholder_list of right type without a PLACEHOLDER_EXPR. |
| |
| Sat Jul 19 18:00:01 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * alpha.c (override_options): Allow processor of ev56 or 21164a. |
| (input_operand, case MEM): Correct test involving TARGET_BYTE_OPS. |
| * alpha.h (SECONDARY_{IN,OUT}PUT_RELOAD_CLASS): Don't need for |
| QImode or HImode if TARGET_BYTE_OPS. |
| (ASM_FILE_START): Write a .arch directive. |
| (STACK_CHECK_BUILTIN): New macro. |
| * alpha.md ({zero_,}extend[qh]i[dsh]i2): Rework TARGET_BYTE_OPS cases. |
| (mov[hq]i): Likewise. |
| (extend[qh]i[hsd]i2x): Add missing cases and fix typo in constraint. |
| (reload_{in,out}[qh]i): Disable for TARGET_BYTE_OPS. |
| |
| Fri Jul 18 23:24:57 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * varasm.c (make_decl_rtl): Don't use ASM_FORMAT_PRIVATE_NAME for |
| local decls with TREE_PUBLIC set. |
| (bc_make_decl_rtl): Likewise. |
| |
| Fri Jul 18 22:16:28 1997 Doug Evans <dje@cygnus.com> |
| |
| * configure.in: Invoke AC_CONFIG_HEADER. |
| Check for string.h, strings.h, stdlib.h, time.h, unistd.h. |
| Check for whether malloc/realloc/free need to be declared. |
| (links): Rename config.h to config2.h. |
| (AC_OUTPUT): Create cstamp-h. |
| * Makefile.in (config.in,cstamp-h.in): Add rules for. |
| (config.h,cstamp-h): Add rules for. |
| (distclean): Delete config2.h, cstamp-h. |
| (ALL_CFLAGS): Add @DEFS@. |
| * aclocal.m4, acconfig.h: New files. |
| |
| * Makefile.in (distclean): Delete Make-host, Make-target. |
| * configure.in (host_overrides): Set to host_xmake_file, don't create |
| Make-host. |
| (target_overrides): Set to tmake_file, don't create Make-target. |
| (language subdir support): Keep together. |
| |
| * c-decl.c (duplicate_decls): Set DECL_ABSTRACT_ORIGIN to olddecl |
| if inline function and not new definition. |
| |
| * configure.in: Don't loop trying to configure language subdirs. |
| Don't pass to configure.lang variables it doesn't use. |
| * configure.lang: Delete top level directory from loop. |
| Delete code not useful for language subdirs. |
| |
| Fri Jul 18 08:12:53 1997 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE> |
| |
| * toplev.c (rest_of_compilation): Call reload_cse_regs here. |
| * reload1.c (reload): Don't call it here. |
| (reload_cse_mem_conflict_p): Remove MEM_OFFSET and MEM_MODE args. |
| (reload_cse_mem_conflict_p, case MEM): Call anti_dependence. |
| (reload_cse_invalidate_mem): Update call to reload_cse_mem_conflict_p. |
| (reload_cse_regs): No longer static. |
| Call init_alias_analysis. |
| Ignore CLOBBER in a PARALLEL. |
| |
| Fri Jul 18 06:44:22 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * objc/Make-lang.in (objc-headers): Fix command for the new build |
| directory layout, don't pass srcdir variable. |
| * objc/Makefile.in (copy-headers): Use $(srcdir) from this |
| makefile, not the parent's. |
| |
| Thu Jul 17 16:03:03 1997 Doug Evans <dje@cygnus.com> |
| |
| * configure.lang (EXTRA_HEADERS,EXTRA_PASSES,EXTRA_PARTS): Delete. |
| (EXTRA_PROGRAMS,EXTRA_OBJS,EXTRA_GCC_OBJS,MD_DEPS): Delete. |
| (version) Delete duplicate entry. |
| * configure.in (merged_frags): Delete unused variable. |
| (extra_headers_list): Move setting outside of subdir loop. |
| (extra_headers,extra_passes): Don't pass to configure.lang. |
| (extra_programs,extra_parts,extra_objs): Likewise. |
| (host_extra_gcc_objs,gxx_include_dir,md_cppflags): Likewise. |
| |
| Thu Jul 17 07:00:43 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * expr.h (STACK_CHECK_*): Provide default values. |
| (probe_stack_range): New declaration. |
| * flags.h (flag_stack_check): Likewise. |
| * explow.c (allocate_dynamic_stack_space): Call probe_stack_range. |
| (emit_stack_probe, probe_stack_range): New functions. |
| * function.c (expand_function_end): If function is non-leaf and stack |
| checking is requested, emit needed probes. |
| * reload1.c (reload): If checking stack, verify frame small enough. |
| * stmt.c (expand_decl): If stack checking, use alloca for large vars. |
| * toplev.c (flag_stack_check): New variable. |
| (f_options): Add "stack-check". |
| |
| * reorg.c (mark_target_live_regs): Pass FIRST_PSEUDO_REGISTER to |
| call to EXECUTE_IF_SET_IN_REG_SET. |
| |
| Wed Jul 16 14:51:00 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * i960.h (ASM_OUTPUT_ALIGNED_BSS): Define. |
| (ASM_OUTPUT_ALIGNED_LOCAL): Use standard method to convert ALIGN |
| to power-of-two of bytes. |
| |
| * sparc.h (ASM_OUTPUT_ALIGNED_BSS): Define. |
| * sparc/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Undef before definition. |
| |
| Wed Jul 16 14:34:09 1997 Klaus Espenlaub (kespenla@hydra.informatik.uni-ulm.de) |
| |
| * calls.c (emit_library_call_value): Initialize all argvec elements. |
| |
| Wed Jul 16 14:31:39 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * global.c (global_conflicts): Pass FIRST_PSEUDO_REGISTER to |
| call to EXECUTE_IF_SET_IN_REG_SET. |
| |
| Wed Jul 16 10:57:03 1997 Richard Earnshaw (rearnsha@cambridge.arm.com) |
| |
| * From Rob Black (r.black@ic.ac.uk) and Mark Brinicombe |
| (amb@physig.ph.kcl.ac.uk): |
| * configure.in (arm-*-netbsd*): New configuration. |
| * arm/netbsd.h, arm/t-netbsd, arm/xm-netbsd.h: New files. |
| |
| Wed Jul 16 10:57:03 1997 Richard Earnshaw (rearnsha@cambridge.arm.com) |
| |
| * arm.c (tune_flags): New variable. |
| (target_{cpu,fpe}_name): Delete. |
| (arm_fpu_arch): New variable. |
| (arm_select): Also allow -march=... to configure just the |
| architecture. |
| (all_procs): Allow armv{2,2a,3,3m,4,4t} for use with -march=. |
| (arm_override_options): Handle -march=, but don't let -mcpu= |
| and -mtune= match the architecture names, since we can only |
| tune for an implementation. Rework selection of tuning options |
| for floating point. |
| (use_return_insn): Support interworking with Thumb code. |
| (arm_rtx_costs): Rework multiply costs so that cost is based on |
| the tune, not the architecture. |
| (f_register_operand): New function. |
| (output_return_instruction): Support interworking with Thumb code. |
| (output_func_epilogue): Support interworking with Thumb code. |
| Remove redundant calculation of code_size. Use floating-point |
| load-multiples if permitted. |
| (emit_sfm): New function. |
| (arm_expand_prologue): Use floating-point store-multiples if |
| permitted. |
| |
| * arm.h (CPP_CPU_ARCH_SPEC): Handle -march=... |
| (TARGET_OPTIONS): Add arch= and fp=. Delete fpe=. |
| (enum processor_type): Add PROCESSOR_NONE, for use in all_procs table. |
| (FP_DEFAULT): Default floating point architecture for generic |
| back-end. |
| (PREDICATE_CODES): Add f_register_operand. |
| |
| * arm.md (*push_fp_multi): New pattern. |
| |
| |
| Tue Jul 15 22:08:47 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * Makefile.in (exeext): Set to build_exeext not exeext. |
| * configure.in (exeext): Delete redundant set and AC_SUBST call. |
| Change remaining AC_SUBST to use build_exeext instead of exeext. |
| |
| Tue Jul 15 15:48:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * configure.in: Fix calculation if default thread support is enabled. |
| |
| Tue Jul 15 13:38:46 1997 Mike Meissner <meissner@cygnus.com> |
| |
| * rtl.h (replace_regs): Declare. |
| |
| Mon Jul 14 16:18:19 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * i960.h (ASM_OUTPUT_MI_THUNK): Define. |
| |
| * dwarf2out.c (gen_subprogram_die): Remove unreachable and redundant |
| code. |
| |
| Mon Jul 14 14:22:45 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * calls.c (emit_library_call): Use right index into argvec array |
| when iterating over arguments which need to be pushed on the stack. |
| (emit_library_call_value): Likewise. |
| |
| Mon Jul 14 08:17:41 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * gcc.c (convert_filename): Fix typo. |
| |
| Mon Jul 14 08:10:12 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * configure.in: Clear headers and lib2funcs before re-reading |
| config-lang.in. |
| |
| * m68k/linux.h (LINK_SPEC): Fix last change. |
| |
| Mon Jul 14 08:03:38 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * configure.in (sparc-*-linux-gnu{*,libc1*}): Add sparc/t-linux. |
| * sparc/t-linux: New file. |
| |
| * alpha/elf.h (LINK_SPEC): Fix typo. |
| * configure.in (alpha-*-linux-gnu*): Set tmake_file. |
| * alpha/t-linux: New file. |
| |
| Mon Jul 14 07:41:37 1997 Philippe De Muyter <phdm@info.ucl.ac.be> |
| |
| * m68k.c (output_{and,ior,xor}si3): New functions from patterns bodies. |
| * m68k.h (output_{and,ior,xor}si3): New extern declarations. |
| * m68k.md (adddi3, subdi3): Allow constant operand. |
| (anddi3, iordi3, xordi3): New patterns. |
| ({and,ior,xor}si3_internal): Use corresponding output_???si3 function. |
| |
| Mon Jul 14 07:33:11 1997 Fila Kolodny <fila@ibi.com> |
| |
| * configure.in (*-*-gnu*): Add crt{begin,end}S.o to extra_parts. |
| |
| Mon Jul 14 07:26:36 1997 Craig Burley <burley@gnu.ai.mit.edu> |
| |
| * varasm.c (assemble_variable): If low part of size |
| doesn't fit in an int, variable is too large. |
| |
| Mon Jul 14 06:51:37 1997 Mike Meissner <meissner@cygnus.com> |
| |
| * bitmap.{h,c}: New files. |
| * Makefile.in (OBJS): Add bitmap.o. |
| (BASIC_BLOCK_H): New make variable for basic-block.h, bitmap.h. |
| ({flow,combine,regclass,local-alloc,reload1,reorg,sched}.o): Use |
| BASIC_BLOCK_H variable instead of basic-block.h. |
| * basic-block.h (*REG_SET): Delete old implementation; use bitmap.h. |
| (regset_{size,bytes}): Delete. |
| (regs_live_at_setjmp): Declare. |
| (EXECUTE_IF_SET_AND_RESET_IN_REG_SET): Delete. |
| * flow.c (init_regset_vector): Make global; don't take basic block |
| times # of pseduos as argument. |
| (life_analysis): Change all init_regset_vector calls. |
| Use free_regset_vector to release arrays only flow uses at end. |
| (allocate_for_life_analysis): Change init_regset_vector call. |
| Don't set regset_{size,bytes}. |
| (free_regset_vector): Call FREE_REG_SET to release any |
| memory allocated by each vector. |
| (propagate_block): Call FREE_REG_SET on dead/live. |
| (mark_used_regs): Don't use REGSET_ELT_TYPE anymore. |
| * output.h (allocate_for_life_analysis): Add declaration. |
| (regno_uninitialized, regno_clobbered_at_setjmp): Likewise. |
| (dump_flow_info, flow_analysis): Likewise. |
| * regclass.c (init_reg_sets): Invoke INIT_ONCE_REG_SET. |
| (allocate_reg_info): Invoke MAX_REGNO_REG_SET. |
| (regset_release_memory): Free basic_block_live_at_start storage. |
| * reorg.c (mark_target_live_regs): Delete unused variables. |
| * sched.c (schedule_block): Free space associated with |
| reg_pending_sets and old_live_regs. |
| (schedule_insns): Free bb_{dead,live}_regs on first pass. |
| (sched_analyze_insn): Use EXECUTE_IF_SET_IN_REG_SET and then clear. |
| * toplev.c (rest_of_compilation): Call regset_release_memory. |
| |
| Mon Jul 14 00:14:13 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * toplev.c (main): Prefer DWARF 2 or stabs with -ggdb. |
| * ns32k/tek6000.h (PREFERRED_DEBUGGING_TYPE): DBX_DEBUG. |
| * alpha.h (PREFERRED_DEBUGGING_TYPE): SDB_DEBUG. |
| * mips.h (PREFERRED_DEBUGGING_TYPE): SDB_DEBUG. |
| |
| Sun Jul 13 15:11:08 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * stupid.c (stupid_mark_refs): If setting reg set only in this |
| insn and not referenced, make REG_UNUSED note. |
| |
| Sun Jul 13 14:03:19 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * gcc.c (process_command): If -save-temps and -pipe were specified |
| together, don't do -pipe. |
| |
| Sun Jul 13 12:27:03 1997 Doug Evans <dje@cygnus.com> |
| |
| * gcc.c (main): Handle blank in version_string when comparing |
| with compiler_version. |
| |
| Sat Jul 12 01:53:55 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * sparc.c (output_function_prologue): Fix offset from CFA. |
| (sparc_flat_output_function_prologue): Likewise. |
| |
| Fri Jul 11 09:49:15 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mips.c (epilogue_reg_mentioned_p): Delete unused function. |
| (mips_epilogue_delay_slots): Likewise. |
| (function_epilogue): Greatly simplify. |
| (mips_expand_epilogue): If we have a null prologue/epilogue, |
| then use a normal return insn. Emit blockage insns before |
| stack pointer adjustments. |
| (mips_can_use_return_insn): Renamed from simple_epilogue_p. All |
| callers changed. Do not use return insns if $31 is live in the |
| function or if generating profiling information. |
| * mips.h (DELAY_SLOTS_FOR_EPILOGUE): Delete. |
| (ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise. |
| * mips.md (return): Remove expander and change the pattern to |
| look like a standard "return" insn. |
| (return_internal): Show use of $31 explictly. |
| (epilogue expander): Enable. |
| |
| Thu Jul 10 13:04:53 1997 Doug Evans <dje@cygnus.com> |
| |
| * cccp.c (INO_T_EQ): Return 0 for MSDOS. |
| |
| * Makefile.in (CC): Use autoconf value. |
| |
| Tue Jul 8 18:08:00 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * dwarf2out.c (gen_subprogram_die): When handling declarations, test |
| DECL_CONTEXT not decl_class_context before equate_decl_number_to_die. |
| |
| Tue Jul 8 16:47:13 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000.md (movsi define_split): Use unsigned HOST_WIDE_INT, |
| not unsigned. |
| |
| Sat Jul 7 00:01:41 1997 Jim Meyering <meyering@eng.ascend.com> |
| |
| * i386/t-sol2 (crt[1in].o): Also depend on $(GCC_PASSES). |
| |
| Fri Jul 4 11:45:39 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * dwarf2out.c (DWARF_CIE_HEADER_SIZE, DWARF_FDE_HEADER_SIZE, |
| size_of_cfi, size_of_fde, calc_fde_sizes, next_fde_offset, |
| cie_size): Lose. |
| (ASM_OUTPUT_DWARF_STRING): Move earlier. |
| (INCOMING_FRAME_SP_OFFSET): Provide default. |
| (initial_return_save): Adjust for CFA offset. |
| (dwarf2out_frame_debug): Lookup initial CFA offset when setting up. |
| (output_call_frame_info): Use label subtraction for length fields. |
| Add pointer to exception region information in for_eh case. |
| (dwarf2out_do_frame): New fn. |
| (dwarf2out_frame_init): Use INCOMING_FRAME_SP_OFFSET. |
| (dwarf2out_frame_finish): Don't bother emitting .debug_frame for |
| non-Irix targets. Just emit .eh_frame. |
| (output_die): Refer to an FDE with label subtraction. |
| * i386.h (INCOMING_FRAME_SP_OFFSET): Define. |
| * defaults.h (DWARF2_UNWIND_INFO): Define if |
| INCOMING_RETURN_ADDR_RTX is provided. |
| * final.c (final): Don't call dwarf2out_frame_debug unless we are |
| doing dwarf 2. |
| |
| Thu Jul 3 17:37:52 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * fp-bit.c (unpack_d): Check fraction not sign to distinquish QNaN. |
| |
| Wed Jul 2 09:48:03 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * loop.c (strength_reduce): Make sure register does not exceed the |
| table size when looking up the last UID. |
| |
| Wed Jul 2 07:47:44 1997 Nick Burrett <n.a.burrett@btinternet.com> |
| |
| * genoutput.c (process_template): Place increment expression |
| outside of putchar function call. |
| |
| Wed Jul 2 06:56:52 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * sparc/linux.h (LIBGCC_SPEC): Removed. |
| (CC1_SPEC): Add %{profile:-p}. |
| ({CPP,LIB,LINK}_SPEC): Choose glibc 1 or 2 depending on USE_GNULIBC_1. |
| * configure.in (sparc-*-linux-gnulibc1*): New configuration. |
| |
| * configure.in (powerpc-*-linuxgnu*): Default thread_file is posix. |
| Set xmake_file to x-linux. Add extra_parts. |
| * rs6000/linux.h (LINK_SPEC): Defined. |
| |
| * m68k/linux.h (LINK_SPEC): Pass -shared for -shared. |
| ({CPP,LINK}_SPEC): Choose for glibc 1 or 2 depending on USE_GNULIBC_1. |
| * configure.in (m68k-*-linux-gnu*): Default thread_file is `posix'. |
| (m68k-*-linux-gnulibc1): New configuration. |
| |
| * alpha/elf.h (LINK_SPEC): Change ld-gnu.so.1 to ld-linux.so.2. |
| * configure.in (alpha-*-linux-gnu*): Default thread_file is `posix'. |
| |
| Wed Jul 2 06:12:37 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * alpha.md (divsi3, modsi3, udivsi3): Comment out. |
| (extendsfsd2_no_tp): Add alternative with output in MEM, input in REG. |
| |
| * configure.in (*-linux*): Add "-gnu" to names to match. |
| |
| * libgcc2.c (_trampoline): Add stdcall attribute to VirtualProtect |
| on i386. |
| |
| * objc/objc.gperf: Renamed from gperf. |
| |
| Wed Jul 2 05:42:19 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * objc/Make-lang.in ($(srcdir)/objc/objc-parse.c): Fix command |
| to use the right file names. |
| |
| Tue Jul 1 23:25:42 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * reorg.c (redundant_insn): If INSN or possible match has REG_UNUSED |
| note, don't have match. |
| |
| Tue Jul 1 18:36:24 1997 Doug Evans <dje@cygnus.com> |
| |
| * mips.c (mips_output_external): Don't output .extern's for |
| variables in user specified sections unless they're .sbss/.sdata. |
| |
| Tue Jul 1 18:30:26 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * cse.c (find_best_addr): Add missing rtx_cost arguments. |
| |
| * fp-bit.c (float_to_usi): Move code for negative numbers before code |
| for infinity. Modify infinty code to only handle positive infinities. |
| |
| Tue Jul 1 11:16:41 1997 Robert Lipe <robertl@dgii.com> |
| |
| * fixinc.sco: Restore pwd aftercopy. |
| Convert declaration of abs in math.h to prototype. |
| Fix static functions in sys/stat.h for C++. |
| |
| Tue Jul 1 10:55:47 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000.md ({add,ior,xor}si3): Change to use define_expand wrapper |
| and split add/ior/xor of large constants early. |
| (andsi3): Remove 6/29 code to do and of large constants. |
| (nor, nand, eqv, maskir): Add names to all logical define_insns. |
| |
| Tue Jul 1 09:03:35 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * h8300.h (BIGGEST_FIELD_ALIGNMENT): Remove definition. |
| * mips.h (BIGGEST_FIELD_ALIGNMENT): Likewise. |
| |
| Mon Jun 30 14:58:00 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * sh.c (sh_expand_epilogue): Emit blockage insn before cutting |
| back stack. |
| |
| Sun Jun 29 11:27:07 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000.h (TARGET_FLAGS): Add -m{,no-}update to suppress |
| creating load/store with update instructions, and also |
| -m{,no-}fused-madd to suppress the generation of fused add and |
| multiply instructions. Move debug flags to TARGET_OPTIONS. |
| (GO_IF_LEGITIMATE_ADDRESS): Don't allow PRE_{INC,DEC} if -mno-update. |
| (GO_IF_MODE_DEPENDENT_ADDRESS): Ditto. |
| (rs6000_debug_{name,stack,arg}): Add declarations. |
| (toc_initialized): Likewise. |
| (got_no_const_operand): Likewise. |
| (PREDICATE_CODES): Add got_no_const_operand. |
| (toc_section): Make toc_initialized a global. |
| (RTX_COSTS): Set appropriate costs for add, logical operators that |
| are really two instructions. |
| |
| * rs6000.c (rs6000_debug_{name,stack,arg}): Add definitions. |
| (rs6000_override_options): Process debug flags. |
| (toc_initialized): Global to say toc initialized. |
| (small_data_operand): Use #if TARGET_ELF, not #ifdef TARGET_SDATA. |
| (rs6000_init_expanders): Likewise. |
| (SMALL_DATA_RELOC): Likewise. |
| (got_no_const_operand): Recognize SYMBOL_REF and LABEL_REF. |
| (rs6000_makes_calls): System V profiling doesn't count as a call. |
| (rs6000_stack_info): Likewise. |
| (rs6000_output_load_toc_table): Take register number argument to |
| determine register to load. Generate correct code if more than |
| one toc table is done in System V due to profiling or non-local |
| gotos. If System V toc is not initialized, initialize it now. |
| (rs6000_allocate_stack_space): Move code from output_prolog to |
| allocate stack space. Take -mno-update into account. |
| (output_prolog): Call rs6000_allocate_stack_space. Only set |
| rs6000_pic_func_labelno if not profiling. |
| (output_function_profiler): Implement System V profiling. |
| (and_operand): Don't call reg_or_short_operand. |
| (rs6000_finalize_pic): If not optimizing, insert a USE of the GOT |
| register as the last insn. |
| |
| * rs6000.md (load/store update): Take -mno-update into account. |
| If -msoft-float, support SF load/store with update to GPR regs. |
| (allocate_stack): Take -mno-update into account. |
| (add/subtract + multiply instructions): Take -mno-fused-madd into |
| account. |
| (nonlocal_goto_receiver): Specify register # to load. |
| ({add,and,ior,xor}si3): Recognize operation done with full 32 bit |
| constant, splitting latter if need be. |
| (andsi3 define_split): Fix up splitting andsi3 of large constant. |
| ({ior,xor}si3 define_split): Use GEN_INT to create integer rtx |
| values. |
| (movsi_got{,_internal}): Split the load of a CONST into load of |
| the SYMBOL_REF/LABEL_REF and an add. |
| (movsi): Know that addsi3 can handle large values now for NT. |
| |
| * sysv4.h (TARGET_SDATA): Remove explicit bit for -msdata. |
| (SUBTARGET_OVERRIDE_OPTIONS): Likewise. |
| (ASM_OUTPUT_ALIGNED_LOCAL): Likewise. |
| (SUBTARGET_SWITCHES): Indicate -m{,no-}sdata doesn't set any flags. |
| (ASM_SPEC): Only pass -m{,no-}reg-names if assembling .s/.S files. |
| (CC1_SPEC): If -msdata, invoke compiler with -msdata=default. |
| (PROFILE_BEFORE_PROLOGUE): Likewise. |
| (RS6000_MCOUNT): Define as "_mcount". |
| (toc_section): Make toc_initialized a global. |
| |
| Fri Jun 27 19:01:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * config/t-linux-gnulibc1: New file. |
| * configure.in (i[3456]86-*-linux*): Default thread_file is `posix'. |
| (i[3456]86-*-linux*gnulibc1): New case. |
| * config/linux.h (LIB_SPEC): Choose for glibc 1 or 2 depending |
| on USE_GNULIBC_1. |
| * i386/linux.h (CPP_SPEC, LINK_SPEC): Likewise. |
| |
| Fri Jun 27 19:00:52 1997 Ralf Baechle <ralf@waldorf-gmbh.de> |
| |
| * config/linux.h (PREFERRED_DEBUGGING_TYPE): Undefine before define. |
| |
| Fri Jun 27 18:35:04 1997 Alan Modra <alan@spri.levels.unisa.edu.au> |
| |
| * configure.in: Clean up Make-{host,target,hooks} in all |
| subdirs, not just '.'. |
| * Makefile.in (distclean): Delete */Make-{host,target,lang,hooks}. |
| |
| Fri Jun 27 18:27:11 1997 Fila Kolodny <fila@ibi.com> |
| |
| * config/xm-gnu.h (fcntl.h): Only include if not building libgcc.a. |
| |
| Fri Jun 27 18:17:44 1997 Doug Evans <dje@cygnus.com> |
| |
| * configure.frag: Rewrite. |
| |
| * objc/Make-lang.in (OBJC_CCOMMON): Object files don't go in srcdir. |
| (OBJC_OBJS): Likewise. |
| (OBJC_O): Likewise. |
| (objc-parse.o, objc-act.o): Fix rules. |
| (objc/libobjc files): Fix rules. |
| |
| Fri Jun 27 13:23:38 1997 Andrew Cagney <cagney@tpgi.com.au> |
| |
| * fp-bit.c (float_to_si): Correct return value when Inf. |
| |
| Fri Jun 27 10:47:09 1997 Scott Christley <scottc@net-community.com> |
| |
| * Makefile.in (DLLTOOL): Define.e |
| * objc/Make-lang.in (libobjc_entry.o, libobjc_s.a, libobjc.dll): |
| New targets. |
| (objc.install-normal): Install Objective-C runtime as a DLL. |
| (objc.mostlyclean): Clean up files used to build DLL. |
| * objc/libobjc.def: New file. |
| * objc/libobjc_entry.c: New file. |
| |
| * objc/sendmsg.c (search_for_method_in_list): No longer static. |
| |
| * Makefile.in (GCC_THREAD_FILE): Renamed from OBJC_THREAD_FILE. |
| * configure.lang (GCC_THREAD_FILE): Likewise. |
| * configure.in (--enable-threads): New parameter. |
| * objc/Make-lang.in (OBJC_THREAD_FILE): New definition.e |
| * objc/config-lang.in: Print message about ObjC thread file. |
| |
| * cccp.c (INO_T_EQ): Define for Win32 but not Cygwin32. |
| * i386/mingw32.h: New file. |
| * i386/xm-mingw32.h: New file. |
| * configure.in (i[3456]86-*-mingw32): New target. |
| * protoize.c (link): Eliminate definition on Win32. |
| |
| * objc/thr-posix.c (__objc_thread_yield): Use sched_yield instead. |
| |
| Fri Jun 27 10:36:41 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * stor-layout.c (layout_record, PCC_BITFIELD_TYPE_MATTERS): |
| Round up when calculating possible end address. |
| |
| Wed Jun 25 19:54:29 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * unroll.c (final_giv_value): Verify that bl->initial_value is |
| invariant before trying to use it. |
| |
| Wed Jun 25 18:13:05 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000/sysv4.h (WCHAR_TYPE{,_SIZE}): Make wchar_t long as per |
| ABI spec. |
| |
| Wed Jun 25 16:56:16 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * sparc.h (INCOMING_RETURN_ADDR_RTX): Define. |
| (DBX_REGISTER_NUMBER): Fix frame pointer regno for -mflat. |
| * sol2.h (DBX_REGISTER_NUMBER): Likewise. |
| * sparc.c (save_regs): Emit dwarf2 frame debug info. |
| (output_function_prologue, sparc_flat_save_restore, |
| sparc_flat_output_function_prologue): Likewise. |
| |
| * dwarf2.h (enum dwarf_call_frame_info): Add DW_CFA_GNU_window_save. |
| * dwarf2out.c (dwarf_cfi_name, output_cfi): Support it. |
| (dwarf2out_cfi_label): Make non-static. |
| (initial_return_save): Support PLUS. |
| (dwarf2out_window_save, dwarf2out_return_save, |
| dwarf2out_return_reg): New fns. |
| |
| * dwarf2out.c (SECTION_FORMAT): Use PUSHSECTION_FORMAT, if defined. |
| (DEBUG_INFO_SECTION): Rename from DEBUG_SECTION. |
| (DEBUG_LINE_SECTION): Rename from LINE_SECTION. |
| * mips/iris6.h: Likewise. |
| |
| Wed Jun 25 16:25:41 1997 Scott Christley <scottc@net-community.com> |
| |
| * Makefile.in (GCC_PASSES): Don't define with $(exeext). |
| * configure.in ({cc,stage_prefix}_set_by_configure): Eliminate extra |
| comma and don't pass value to configure.lang. |
| * objc/Make-lang.in (objc-runtime): Add objc-headers. |
| |
| * configure.in: Execute configure.frag in a shell. |
| |
| * configure.in (cross_overrides, build_overrides): Default to |
| /dev/null to help platforms where sed cannot handle empty filenames. |
| |
| * Reorganize thread implementation to make a clearly defined |
| front-end/back-end interface. |
| * objc/thr-{decosf1,irix,mach,os2,posix,pthreads,single}.c: Completely |
| rework according to new interface. |
| * objc/thr-{solaris,win32}.c: Likewise. |
| * objc/thr.c: Likewise. |
| * objc/thr.h: Define front-end/back-end interface functions and |
| structures. |
| |
| Wed Jun 25 16:14:10 1997 Ovidiu Predescu <ovidiu@net-community.com> |
| |
| * Complete implementation of +load. |
| * objc/init.c (objc_send_load): New function. |
| (objc_class_tree): New structure. |
| (create_tree_of_subclasses_inherited_from): New function. |
| (__objc_tree_insert_class): New function. |
| (objc_tree_insert_class): New function. |
| (objc_preorder_traverse): New function. |
| (objc_postorder_traverse): New function. |
| (__objc_tree_print): New function. |
| (__objc_destroy_class_tree_node): New function. |
| (class_is_subclass_of_class): New function. |
| (__objc_exec_class): Allocate class tree list and load hash table. |
| (__objc_send_message_in_list): Rewrite using hash table. |
| (__objc_send_load): Remove calls to _objc_load_callback. |
| (objc_send_load): Make static. Create Tree of classes resembling |
| class hierarchy for all modules. Call __objc_send_load on all of |
| the modules in __objc_module_list. |
| (__objc_create_classes_tree): New function. |
| |
| * objc/encoding.h (method_get_sizeof_arguments): Fix typo. |
| * objc/objc-api.h (OBJC_ERR_BAD_STATE): New error code. |
| On NeXT redefine object_copy and object_dispose to avoid |
| a conflict with those defined in system library. |
| * objc/selector.c (__objc_register_instance_methods_to_class): New |
| function. |
| * objc/runtime.h: Likewise. Add missing function prototypes. |
| |
| Wed Jun 25 15:09:01 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * Makefile.in (Makefile): Execute configure.frag from srcdir. |
| |
| * Makefile.in (configure): Target is $(srcdir)/configure. |
| |
| Tue Jun 24 15:18:14 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * m68k.h (LIMIT_RELOAD_CLASS): Define. |
| |
| * recog.c (constrain_operands): When checking earlyclobbers, use |
| operands_match_p instead of rtx_equal_p. |
| |
| * dwarfout.c (field_byte_offset): Check for object_offset_in_bits |
| greater than bitpos_int and recompute object_offset_in_bytes if true. |
| |
| * mips.md (movdi_internal): Add x/J alternative. |
| (movdi_internal2): Add x/J alternative; change a/I to a/J. |
| (movsi_internal1, movsi_internal2): Change x/I alternative to x/J. |
| |
| Tue Jun 24 08:49:56 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.h (ASM_OUTPUT_SECTION_NAME): Fix typo. |
| |
| Mon Jun 23 22:48:00 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * unroll.c (find_splittable_givs): Set splittable_regs_updates to |
| biv_count for reduced givs. |
| |
| Mon Jun 23 10:51:53 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10200.c, mn10200.h, mn10200.md: New files for mn10200 port. |
| * lib1funcs.asm, divmod.c, udivmod.c, udivmodsi4.c: Likewise. |
| * t-mn10200, xm-mn10200.h, va-mn10200.h: Likewise. |
| * Makefile.in (USER_H): Add va-mn10200.h. |
| * varargs.h, stdarg.h: Include va-mn10200.h. |
| * configure.in (mn10200-*-*): New target. |
| |
| Sun Jun 22 06:47:19 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * combine.c (force_to_mode): Don't do anything for ASM_OPERANDS insn. |
| |
| Sun Jun 22 06:29:28 1997 J. Kean Johnston <jkj@sco.com> |
| |
| * ginclude/stdarg.h: Protect va_list definition from SCO headers. |
| * ginclude/varargs.h: Likewise. |
| |
| Sat Jun 21 20:56:23 1997 Scott Christley <scottc@net-community.com> |
| |
| * Make ObjC a front-end language. |
| * Makefile.in (LANGUAGES, COMPILERS, .PHONY, stmp-int-hdrs): Remove |
| specific references to ObjC compiler and source files. |
| ({mostly,dist,maintainer,}clean, install-normal): Likewise |
| (OBJC_OBJS, OBJC, OBJECTIVE-C, cc1obj, objc-runtime): Rules deleted. |
| (libobjc.a, sublibobjc.a, objc-parse.{o, c, y}): Rules deleted. |
| (objc-headers, install-libobjc): Rules deleted. |
| * objc/Make-lang.in: New file; from rules deleted above. |
| * objc/config-lang.in: New file. |
| * objc/Makefile.in: Changes to support ObjC as a front-end language; |
| renamed from Makefile.in. |
| * objc-act.{c,h}, objc-parse.{c,y}, objc-tree.def: Moved to objc dir. |
| |
| Sat Jun 21 07:54:36 1997 Robert Lipe <robertl@dgii.com> |
| |
| * fixinc.sco (math.h): Correct the collision of "exception". |
| |
| Sat Jun 21 06:51:40 1997 Peter Gerwinski <peter@agnes.dida.physik.uni-essen.de> |
| |
| * rs6000.c (output_epilog): Name is "GNU Pascal", not all caps. |
| |
| Sat Jun 21 06:29:19 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * gcc.c (main): Check for and read ${libdir}/gcc-lib/specs to |
| override the default specs. |
| |
| Fri Jun 20 17:20:15 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * mips.c (output_block_move): When loading addresses into registers, |
| add checks for ABI_N32 and ABI_64. |
| (mips_expand_prologue): Add check for SImode in code splitting |
| tsize_rtx when it is large_int. |
| |
| Fri Jun 20 09:07:31 1997 Russell King <rmk92@ecs.soton.ac.uk> |
| |
| * configure.in (arm-*-linuxaout): New target. |
| * arm/lib1funcs-linux.asm, arm/linux-gas.h: New files. |
| * arm/linux.h, arm/t-linux, arm/xm-linux.h: New file. |
| * xm-linux.h: Undef some macros before defining them. |
| |
| Thu Jun 19 21:18:20 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * dwarf2out.c (output_line_info): Always use DW_LNE_set_address instead |
| of DW_LNS_fixed_advance_pc for line number addresses. |
| (size_of_line_info): Adjust size calculation as per above change. |
| (text_end_label): Make it static. |
| |
| Thu Jun 19 14:55:49 1997 Brendan Kehoe <brendan@cygnus.com> |
| |
| * toplev.c (xmalloc): Only give the fatal msg if SIZE is non-zero. |
| |
| Sun Apr 27 23:19:13 1997 Ulrich Drepper <drepper@cygnus.com> |
| |
| * libgcc2.c (__eh_type): Remove `extern' to make this a definition. |
| |
| Wed Jun 18 18:10:16 1997 Per Bothner <bothner@cygnus.com> |
| |
| * dbxout.c (dbxout_type_fields): Skip field if DECL_IGNORED_P. |
| |
| Wed Jun 18 18:04:33 1997 Mike Stump <mrs@cygnus.com> |
| |
| * except.c (end_eh_unwinder): If we have a return instruction, we |
| have to make sure we use it and don't fall off the end of the |
| function in the unwinder. |
| |
| Wed Jun 18 14:27:58 1997 Mike Stump <mrs@cygnus.com> |
| |
| * flow.c (find_basic_blocks): Fix end case bug. |
| |
| Tue Jun 17 18:35:57 1997 Mike Stump <mrs@cygnus.com> |
| |
| * libgcc2.c (__eh_pcnthrow): Add support -fno-sjlj-exceptions |
| -fPIC exception handling on the SPARC. |
| * sparc.h (DONT_ACCESS_GBLS_AFTER_EPILOGUE): Likewise. |
| * libgcc2.c (__eh_ffetmnpc): Remove. |
| |
| Mon Jun 16 20:28:51 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * collect2.c (extract_string): Null-terminate. |
| |
| Mon Jun 16 14:38:44 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * combine.c (set_nonzero_bits_and_sign_copies): Use REG_SET macros |
| instead of doing bit operations directly. |
| (try_combine,reg_dead_at_p): Ditto. |
| * caller-save.c (save_call_clobbered_regs): Ditto. |
| * reload1.c (reload): Ditto. |
| * local-alloc.c (update_equiv_regs,block_alloc): Ditto. |
| * sched.c (schedule_block): Dito. |
| |
| Sun Jun 15 20:46:12 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * dwarf2out.c (dwarf2out_frame_debug): Handle IOR. |
| (struct limbo_die_struct): Define. |
| (TYPE_DECL_IS_STUB): Call decl_ultimate_origin if DECL_ABTRACT_ORIGIN |
| is set. |
| (limbo_die_count): Delete. |
| (libmo_die_list): Define. |
| (new_die): Add die to limbo_die_list instead of incrementing |
| limbo_die_count. |
| (add_AT_location_description): Renamed from add_location_attribute. |
| New parameter attr_kind. |
| (add_location_or_const_value_attribute, gen_subprogram_die, |
| add_bound_info): Change call to add_AT_location_description. |
| (add_bound_info): Add call to contains_placeholder_p. Ignore |
| MAX_EXPR and VAR_DECL. |
| (add_subscript_info): Ignore the index type if it is an unnamed |
| integral type. |
| (scope_die_for): Move check for function-local tags after code setting |
| containing_scope, and add check for non-NULL containing_scope |
| (add_type_attribute): If unnamed type, use TREE_TYPE instead. |
| (gen_enumeration_type_die, gen_struct_or_union_type_die): Call |
| add_child_die if die_parent is NULL. |
| (gen_subprogram_die): Ifdef out DW_AT_static_link code. |
| (decls_for_scope): Delete decrement of limbo_die_count. |
| (dwarf2out_finish): Add code to traverse the limbo_die_list, and |
| call add_child_die if die_parent is NULL. Delete limbo_die_count code. |
| * mips.c (mips_expand_prologue): If tsize_rtx is large_int, emit two |
| insns instead of one splitable insn, setting RTX_FRAME_RELATED_P. |
| |
| Fri Jun 13 19:33:35 1997 Brendan Kehoe <brendan@cygnus.com> |
| |
| * fixincludes: Also fix AIX NULL macro in sys/{dir,param,types}.h. |
| |
| Thu Jun 12 22:53:12 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * m68k.md (mov[qhs]i): Remove pair of constraints which allow |
| offsetable memory addresses to be moved to the same for TARGET_5200. |
| |
| Thu Jun 12 15:33:01 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.h (SELECT_RTX_SECTION): Place symbolic operands into the |
| data section. |
| |
| * pa.c (emit_move_sequence): Rewrite code to handle arithmetic |
| involving plabels. |
| |
| Wed Jun 11 08:57:14 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * tree.c (unsave_expr_now): Avoid recursing into the parts of |
| the tree that are RTL. |
| |
| Thu Jun 12 09:43:55 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * reorg.c (emit_delay_sequence): Call set_new_first_and_last_insn |
| after the new sequence insn has been spliced into the insn chain. |
| |
| Wed Jun 11 23:10:49 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.md (call, call_value): Use "call" instead of "calls" |
| for calls to named functions. |
| |
| Wed Jun 11 00:22:34 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * configure, configure.in: Restore changes from Feb 15 to Apr 13 |
| lost during conversion to autoconf. |
| |
| Tue Jun 10 18:23:35 1997 Mike Stump <mrs@cygnus.com> |
| |
| * stmt.c (expand_decl_cleanup): Avoid core dumping when exceptions |
| aren't on. |
| |
| Tue Jun 10 18:22:30 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * collect2.c (extract_string): New fn. |
| (main): Use it. |
| |
| Tue Jun 10 17:40:15 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * expr.c (emit_group_load): Add case using gen_lowpart. |
| |
| Tue Jun 10 17:14:58 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000/rs6000.c (rs6000_override_options): If -mcpu=403, set |
| -mstrict-align as well. |
| |
| * rs6000/t-ppc{,gas} (MULTILIB_EXTRA_OPTS): Build libraries with |
| -mstrict-align. |
| |
| * configure.in ({powerpc,rs6000}*-*-*): Add embedded targets to |
| --with-cpu=n support. |
| |
| Tue Jun 10 07:06:12 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * flow.c (mark_used_regs): Fix typo in Jun 4 change. |
| |
| Mon Jun 9 20:26:26 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * Makefile.in (MAYBE_USE_COLLECT2): Renamed from MAYBE_USE_COLLECT. |
| |
| Mon Jun 9 19:42:21 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * fold-const.c (fold): Don't do COND_EXPR -> MIN_EXPR folding if it |
| loses information that might be needed by a later use as an lvalue. |
| |
| Mon Jun 9 19:10:50 1997 Alexandre Oliva <oliva@dcc.unicamp.br> |
| |
| * configure.in: Don't override a user's setting for prefix |
| on platforms that use the native prefix. |
| |
| Mon Jun 9 19:00:49 1997 Brendan Kehoe <brendan@melange.gnu.ai.mit.edu> |
| |
| * integrate.c (expand_inline_function): Use the mode of FNDECL's |
| result rtl, not the result type itself, in setting ARRIVING_MODE. |
| |
| * reload1.c (reload): Use xmalloc instead of alloca for the label |
| offsets in OFFSETS_AT and OFFSETS_KNOWN_AT. |
| |
| Mon Jun 9 15:16:52 1997 Mike Stump <mrs@cygnus.com> |
| |
| * flow.c (find_basic_blocks): Eliminate more dead code, enables |
| dead throws to be eliminated. |
| |
| Mon Jun 9 17:15:50 1997 Stephen L Moshier <moshier@world.std.com> |
| |
| * alpha.c (check_float_value): Underflow and overflow constants |
| are different for FLOAT_VAX and default targets. |
| |
| Mon Jun 9 16:48:21 1997 Scott Christley <scottc@net-community.com> |
| |
| * Makefile.in (Makefile): Process language fragments. |
| * configure.frag: New file. |
| * configure.in: Move language fragment processing to configure.lang.e |
| |
| * Makefile.in (GCC_PASSES): Prevent all compilers from being |
| built when only the C compiler is needed. |
| |
| * configure.in (cross_overrides, build_overrides): Use absolute |
| path to GCC top-level source directory. |
| |
| * configure.in: Save target alias for language directories. |
| |
| * configure.in (with-gxx-include-dir): New parameter for |
| setting the g++ header file directory. |
| * Makefile.in (gxx_include_dir): Use autoconf variable. |
| |
| * configure.in: Add parameter for setting local prefix. |
| |
| * configure.lang: New file. |
| * configure.in: Move language subdirectory Makefile processing |
| into configure.lang. |
| |
| Mon Jun 9 16:44:47 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * sched.c (attach_deaths): Fix typo in Jun 4 change. |
| |
| Mon Jun 9 15:13:00 1997 Marc Lehmann (pcg@goof.com) |
| |
| * varasm.c (assemble_end_function): Switch back to function |
| section after outputting constant pool. |
| |
| Mon Jun 9 14:47:22 1997 Paul Eggert <eggert@twinsun.com> |
| |
| * tree.c (change_main_variant): Remove unused function. |
| (build_array_type): Remove obsolete references to |
| change_main_variant. |
| * c-decl.c (complete_array_type): Likewise. |
| |
| * c-common.c (c_build_type_variant): Don't futz with main type |
| variant of array since C Standard requires main type variant of |
| array-of-const also be array-of-const. |
| |
| * Makefile.in: Comment out lines containing just formfeeds. |
| |
| * Makefile.in (distclean): Remove config.bak. |
| (maintainer-clean): Output warning. |
| Do not remove `configure'. |
| |
| Mon Jun 9 14:44:17 1997 J.T. Conklin <jtc@netbsd.org> |
| |
| * configure.in (*-*-netbsd): Restore changes of Apr 13th lost in |
| autoconf conversion: tmake_file now t-netbsd; delete xmake_file. |
| |
| Mon Jun 9 14:39:29 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * expr.c (expand_builtin, case BUILT_IN_FRAME_ADDRESS): |
| Use correct function name in error message. |
| |
| * Makefile.in (diff): Exclude bi-parser.h. |
| |
| * i386.h (CC1_CPU_SPEC): Renamed, was CC1_SPEC. |
| (CC1_SPEC): New macro. |
| (EXTRA_SPECS): Add "cc1_cpu". |
| * i386/linux.h (CC1_SPEC): New macro. |
| |
| Mon Jun 9 13:23:06 1997 Philippe De Muyter <phdm@info.ucl.ac.be> |
| |
| * m68k/next.h (TARGET_DEFAULT): Use MASK_68040, |
| not MASK_68040_ALSO. |
| * m68k/mot3300.h, m68k/ccur-GAS.h (TARGET_DEFAULT): Likewise. |
| |
| * m68k.h (MACHINE_STATE_{SAVE,RESTORE}): Test #ifdef __mcf52000__, |
| not if (TARGET_52000); fixed for mc68000 case. |
| |
| * m68k/mot3300.h (CPP_SPEC): Define __mc68020__ if no -m[c]68000 |
| command-line option given. |
| |
| Mon Jun 9 09:19:17 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * Makefile.in (target_alias): Substitute with target_alias. |
| |
| * final.c (final_scan_insn): Use single_set to check cc_status.flags. |
| |
| Mon Jun 9 09:09:07 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * c-common.c (check_format_info): Correct handling of the 'a' flag |
| which adds another pointer level. |
| |
| Sun Jun 8 00:34:25 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.md (conditional branch insns): Get length right for branches |
| to targets which can not be reached with a "bl" instruction. |
| * pa.c (output_cbranch): Handle branches to targets which can not |
| be reached with a "bl" instruction. |
| |
| * pa.md (alternate dbra pattern): Remove incorrect pattern. |
| |
| Sat Jun 7 23:30:25 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.c (struct defer_plab): Renamed to struct deferred_plabel. |
| Remove "symbol" field and replace with "name" field. |
| (output_function_epilogue): Don't output deferred plabels here. |
| (output_deferred_labels): New function. Output them here instead. |
| (output_call): Rewrite long call support. |
| * pa.h (ASM_FILE_END): Define. |
| (LEGITIMATE_CONSTANT_P): Never accept a function_label_operand. |
| * pa.md (HIGH and LO_SUM of function address): Remove patterns. |
| |
| Fri Jun 6 16:09:04 1997 Mike Stump <mrs@cygnus.com> |
| |
| * libgcc2.c (__eh_ffetmnpc): Add support for machines that cannot |
| access globals after throw's epilogue when -fno-sjlj-exceptions is |
| used. |
| * rs6000.c (DONT_ACCESS_GBLS_AFTER_EPILOGUE): Likewise. |
| * mips.h (DONT_ACCESS_GBLS_AFTER_EPILOGUE): Likewise. |
| (INITIAL_ELIMINATION_OFFSET): Fix RETURN_ADDRESS_POINTER_REGNUM |
| for 64 bit words, with 32 bit pointers and variable endianness. |
| |
| Fri Jun 6 17:27:58 1997 Mike Meissner <meissner@cygnus.com> |
| |
| * regclass.c (allocate_reg_info): Fix off by one error. |
| |
| Fri Jun 6 17:17:41 1997 Doug Evans <dje@cygnus.com> |
| |
| * basic-block.h (EXECUTE_IF_SET_IN_REG_SET): Fix setting of scan_rs_. |
| (EXECUTE_IF_SET_AND_RESET_IN_REG_SET): Likewise. |
| (EXECUTE_IF_AND_IN_REG_SET): Likewise. |
| (EXECUTE_IF_AND_COMPL_IN_REG_SET): Likewise. |
| |
| Fri Jun 6 15:42:59 1997 Stan Cox <coxs@dg-rtp.dg.com> |
| |
| * i386.c (notice_cc_update): Set CC_FCOMI is this is a float compare. |
| |
| Fri Jun 6 15:12:38 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * basic-block.h (REG_SET_TO_HARD_REG_SET): Fix typo. |
| |
| * sched.c (update_flow_info): When add extra REG_DEAD note for original |
| dest, handle case where last insn both uses and sets dest. |
| |
| Thu Jun 5 22:19:36 1997 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * fixinc.irix: Add declaration of __vfork to unistd.h. |
| |
| * i960/vx960-coff.h (CPP_SPEC): Always define CPU, even if they |
| use -ansi; the VxWorks headers assume it's always present. |
| * sparc/vxsparc.h (CPP_SPEC): Define, adding the CPU definition to |
| what came from sparc.h. |
| (CPP_PREDEFINES): Don't define it here. |
| |
| Thu Jun 5 13:40:33 1997 Mike Meissner <meissner@cygnus.com> |
| |
| * basic-block.c (OBSTACK_ALLOC_REG_SET): Rename from |
| OBALLOC_REG_SET. Add obstack pointer parameter. |
| |
| * flow.c (function_obstack): Add declaration. |
| (life_analysis): Don't allocate the space to hold to vector of |
| regsets here. |
| (init_regset_vector): Add pointer parameter and delete space |
| paramter. Use OBSTACK_ALLOC_REG_SET to allocate. Change callers. |
| (propagate_block): Use ALLOCA_REG_SET instead of bare alloca. |
| |
| * sched.c (schedule_block): Fix typo in yesterday's changes. |
| * reorg.c (mark_target_live_regs): Ditto. |
| |
| Thu Jun 5 09:44:49 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * sh.c (trap_exit, sp_switch): New variables. |
| (print_operand, case '@'): If trap_exit is nonzero, then use |
| a trapa instead of an rte/rts to exit the current function. |
| (sh_expand_prologue): Switch stacks at function entry as needed. |
| (sh_expand_epilogue): Similarly at function exit. |
| (function_epilogue): Clear trap_exit and sp_switch too. |
| (sh_valid_machine_decl_attribute): New function. |
| * sh.h (VALID_MACHINE_DECL_ATTRIBUTE): Define. |
| (sp_switch): Declare. |
| * sh.md (sp_switch_1, sp_switch_2): New named patterns. |
| |
| Wed Jun 4 18:11:14 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * basic-block.h (REGSET_ELT_BITS): Make this explicitly unsigned, so |
| that division and modulus of REGSET_ELT_BITS uses a pure shift. |
| (*_REG_SET): New macros to abstract the register set interface. |
| |
| * caller-save.c (save_call_clobbered_regs): Use new *_REG_SET |
| macros. |
| * flow.c (life_analysis,propagate_block,insn_dead_p): Ditto. |
| (regno_uninitialized,regno_clobbered_at_setjmp,mark_set_1): Ditto. |
| (mark_used_regs,dump_flow_info,global_conflicts): Ditto. |
| global.c (mark_elimination): Ditto. |
| * reorg.c (mark_target_live_regs): Ditto. |
| * sched.c (sched_{analyze_{1,insn},note_set}): Ditto. |
| (birthing_insn_p,attach_deaths,unlink_notes,schedule_block): Ditto. |
| |
| * sched.c (sometimes structure): Delete offset, bit fields, replace |
| with regno. |
| (new_sometimes_live): Take regno argument, not offset and bit. |
| Change all callers. |
| |
| Tue Jun 3 19:18:36 1997 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * fixincludes: Fix AIX NULL macro use of void*. |
| |
| Tue Jun 3 15:21:04 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * sparc.h (ASM_OUTPUT_MI_THUNK): Handle -fpic. |
| |
| Mon Jun 2 16:53:53 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * loop.c (n_times_{set,used}): Make type int, not short. |
| (scan_loop): n_times{set,used} are now int pointers. |
| |
| * sched.c (sched_reg_n_deaths): Remove unused variable. |
| (struct sometimes): Make fields int sized, not short. |
| (schedule_insns): Don't set sched_reg_n_deaths, nobody uses it. |
| |
| * regclass.c (allocate_reg_info): Allocate the space for |
| reg_renumber, but don't set reg_renumber unless new argument |
| RENUMBER_P is set. If this is the first call for the function and |
| we need to grow space, use free/xmalloc instead of realloc since we |
| will be initializing the whole array. If number of registers is < |
| 0, just free up the space. |
| (reg_scan): Update allocate_reg_info call. |
| |
| * regs.h (allocate_reg_info): Change prototype. |
| |
| * flow.c (allocate_for_life_analysis): Update allocate_reg_info |
| call. |
| |
| * local-alloc.c (local_alloc): Call allocate_reg_info to allocate |
| and initialize the reg_renumber array. |
| * stupid.c (stupid_life_analysis): Ditto. |
| |
| Mon Jun 2 14:50:06 1997 Dave Miller <davem@jenolan.rutgers.edu> |
| |
| * sparc/sparc.md (v9 eq/ne cond move patterns): Add early clobber |
| constraint to destination. |
| |
| Fri May 30 11:00:44 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * regs.h (reg_info): New structure to group the arrays indexed by |
| register number created by reg_scan and flow_analysis that are |
| globally visiable. |
| (reg_n_info): Pointer to the register information array. |
| (reg_n_{refs,sets,deaths,calls_crossed}): Delete variables. |
| (reg_changes_size): Ditto. |
| (REG_N_{REFS,SETS,DEATHS,CALLS_CROSSED}): New macros to reference |
| reg_n_info. |
| (REG_{CHANGES_SIZE,{FIRST,LAST,LAST_NOTE}_UID}): Ditto. |
| (allocate_reg_info): Add declaration. |
| |
| * basic-block.h (reg_basic_block): Delete. |
| (REG_BASIC_BLOCK): Use reg_n_info structure. |
| |
| * caller-save.c: Change all references to the above arrays to use |
| the corresponding macro to access the reg_n_info array. |
| * combine.c, cse.c, flow.c, global.c, jump.c, local-alloc.c: Ditto. |
| * loop.c, regclass.c, reload1.c, sched.c, stupid.c, unroll.c: Ditto. |
| |
| * regclass.c (allocate_reg_info): New function to allocate the |
| reg_info array and initialize the appropriate fields. |
| (reg_scan): Call it. |
| |
| * flow.c (allocate_for_life_analysis): Call allocate_reg_info to do |
| the actual allocation. |
| |
| Thu May 29 15:42:59 1997 Stan Cox <coxs@dg-rtp.dg.com> |
| |
| * i386.md (movsfcc_1, movdfcc_1, movxfcc_1): Use singlemove_string |
| for float conditional move when destination and operands all differ. |
| |
| * i386.h (ASM_OUTPUT_REG_{PUSH,POP}): add %% before register name. |
| |
| * go32.h (ASM_OUTPUT_ALIGN): Use .p2align, not byte alignments. |
| |
| Wed May 28 20:44:00 1997 Mike Stump <mrs@cygnus.com> |
| |
| * except.c (push_eh_entry): Eliminate start of exception region |
| label, as it isn't used. Rename end_label to outer_context. |
| (expand_eh_region_start_for_decl): Likewise. |
| (expand_leftover_cleanups): Likewise. |
| (expand_start_all_catch): Likewise. |
| * except.h (eh_entry): Likewise. |
| * except.c (expand_eh_region_end): Likewise. Jump around the nop |
| that we insert, so that we can optimize it away, if it is unused, |
| also so that flow analysis can tell if we fall through to the end |
| of a function or not so that it can know if a function that returns |
| a value, in fact does or not. |
| |
| Wed May 28 10:50:09 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.md (jump): Handle out of range unconditional jump |
| when not optimizing. |
| |
| Thu May 22 00:57:07 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * reload1.c (reload_cse_record_set): Ignore values for SREG if |
| their mode is narrower than DEST_MODE. |
| |
| * pa.h (DFMODE_RETURN_STRING): Define. |
| (SFMODE_RETURN_STRING): Likewise. |
| (ASM_DECLARE_FUNCTION_NAME): Use them. |
| |
| Wed May 21 23:32:02 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.md (reload_insi): Handle SUBREG properly. |
| |
| Tue May 20 22:32:13 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * dwarf2out.c (dwarf2out_def_cfa): Set cfa_reg at the top. |
| |
| Tue May 20 16:57:50 1997 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * cplus-dem.c (do_type): Handle `J'. |
| (demangle_fund_type): Print "complex" for it. |
| |
| Mon May 19 21:01:53 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * m68k.c (output_move_qimode): Add coldfire support. |
| * m68k.h (PUSH_ROUNDING): Add coldfire support. |
| * m68k.md (scc0_di, scc_di, seq, sne, sgt, sgtu, slt, sltu, sge, sgeu, |
| sle, sleu): Add coldfire support. |
| |
| Mon May 19 17:53:34 1997 Mike Meissner <meissner@cygnus.com> |
| |
| * rs6000/rs6000.c: (rs6000_pic_func_labelno): New variable to hold |
| the pic label number for the function's LCL label. |
| (rs6000_output_load_toc_table): Use it. |
| (output_prolog): Store current value. |
| |
| Sun May 18 16:32:08 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * config/dbxcoff.h (ASM_OUTPUT_SOURCE_LINE): Use the macros |
| ASM_{GENERATE,OUTPUT}_INTERNAL_LABEL to create/output the line |
| number label. |
| |
| Sun May 18 13:55:12 1997 John Vickers (john@rhizik.demon.co.uk) |
| |
| * m68k.h (TARGET_SWITCHES): Add new target name, cpu32. |
| |
| Sun May 18 13:50:10 1997 Pat Rankin <rankin@eql.caltech.edu> |
| |
| * cccp.c (VMS_write, VMS_read): Delete. |
| (safe_write): If MAX_WRITE_LEN is defined, limit |
| incremental write attempts to that amount. |
| (safe_read): Analogous situation for MAX_READ_LEN. |
| * cpplib.c (safe_read): Likewise. |
| * vax/xm-vms.h (MAX_WRITE_LEN, MAX_READ_LEN): Define. |
| |
| * vax/xm-vms.h (get_dynamic_handler_chain_libfunc): New macro. |
| (protect_cleanup_actions_with_terminate): New macro. |
| |
| Sun May 18 08:50:25 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * m68k/linux.h (ASM_COMMENT_START): Define. |
| * m68k/linux-aout.h (ASM_COMMENT_START): Define. |
| |
| * reload1.c (reload_cse_regno_equal_p): Check for value using more |
| than one register on a big endian machine. |
| |
| Sun May 18 08:39:59 1997 Vince Del Vecchio <vdelvecc@spd.analog.com> |
| |
| * loop.c (maybe_eliminate_biv_1): In (set (cc0) <biv>) case, |
| swap compare operands when mult_val < 0 in one additional place. |
| |
| Sun May 18 08:33:30 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * dwarf2out.c (ASM_COMMENT_START): Add default definition. |
| |
| * Makefile.in (maintainer-claean): Delete configure. |
| |
| Sun May 18 08:31:59 1997 Scott Christley <scottc@net-community.com> |
| |
| * configure.in: New file. |
| * Makefile.in: Change to utilize autoconf variables. |
| * configure: Now an output file. |
| |
| Sun May 18 07:48:31 1997 J.T. Conklin <jtc@netbsd.org> |
| |
| * m68k.md (mov[qhs]i,movstrict[qs]i, mulsi3): Use 'Q' constraint |
| for TARGET_5200. |
| * m68k.h (EXTRA_CONSTRAINT): New macro. |
| |
| * m68k.h (TARGET_SWITCHES): Add 68020-60. |
| Mask out bits which indicate a particular processor when a different |
| processor is selected. |
| (MASK_68040_ALSO): Remove. |
| (MASK_68040): Change to be a single bit. |
| |
| * m68k.h (TARGET_ALIGN_INT, MASK_ALIGN_INT): New macros. |
| (BIGGEST_ALIGNMENT): Determine according to TARGET_ALIGN_INT. |
| (TARGET_SWITCHES): Add align-int and no-align-int. |
| |
| * m68k.md (mov[qhs]i}): Add pair of constraints which allow |
| offsetable memory addresses to be moved to the same for TARGET_5200. |
| |
| * m68k.c (output_move_strict{hi,qi}): New functions. |
| * m68k.h (output_move_strict{hi,qi}): Declare. |
| * m68k.md (movstrict*): Changed into define_expands. |
| Split insns into m68k and coldfire specific versions with appropriate |
| constraints. |
| |
| Sun May 18 07:26:40 1997 Philippe De Muyter <phdm@info.ucl.ac.be> |
| |
| * libgcc2.c (atexit): Cast malloc and realloc calls. |
| |
| Sat May 17 16:26:51 1997 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE> |
| |
| * final.c (profile_function): Call function_section, not |
| text_section. |
| |
| Sat May 17 16:01:00 1997 Philippe De Muyter <phdm@info.ucl.ac.be> |
| |
| * cse.c (notreg_cost): New function, extracted from COST macro. |
| (COST): Use notreg_cost. |
| |
| Sat May 17 15:13:23 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * cse.c (cse_insn): Don't record a SRC that's a MEM and the same |
| as a REG_EQUIV note if DEST is set more than once. |
| |
| Fri May 16 14:50:57 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.c (output_move_double): Handle loading a general register |
| from a scaled indexed memory address. |
| * pa.md (movdf, movdi): Allow scaled loads into general registers. |
| |
| Fri May 16 13:31:08 1997 Mike Stump <mrs@cygnus.com> |
| |
| * rs6000.c (rs6000_stack_info): Only do eabi setup for "main", |
| when main is the global main, not some nested routine that |
| happens to be called main. |
| |
| Thu May 15 17:19:50 1997 Mike Stump <mrs@cygnus.com> |
| |
| * except.c (expand_start_all_catch): If the machine needs to |
| perform any actions at the start of an expcetion handler that |
| hasn't already been done, use gen_exception_receiver to emit it. |
| (expand_leftover_cleanups): Likewise. |
| * alpha/alpha.md (exception_receiver): Use it. |
| * pa/pa.h (exception_receiver): Use it. |
| |
| Thu May 15 08:36:59 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * dbxout.c (dbxout_function_end): Don't subtract one from |
| the end of function scoping stab. |
| |
| Wed May 14 23:27:09 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.md (adddi3, subdi3): Remove expanders and patterns. |
| |
| Wed May 14 18:51:35 1997 Mike Stump <mrs@cygnus.com> |
| |
| * function.c (expand_function_end): Make sure we finish off any |
| leftover exception handlers. |
| |
| Tue May 13 14:07:01 1997 Mike Stump <mrs@cygnus.com> |
| |
| * expr.c (expand_builtin_setjmp): Remove setting of |
| current_function_has_nonlocal_goto, as this isn't a goto. |
| |
| Tue May 13 14:47:40 1997 Richard Earnshaw (rearnsha@cambridge.arm.com) |
| |
| * arm.h (CPP_SPEC): Fix typo invoking cpp_endian. |
| * arm/t-semi (LIB2FUNCS_EXTRA): Build fp-bit.c when compiling |
| with -msoft-float. |
| * arm.c: Add prototypes for all static functions. |
| (output_multi_immediate, int_log2): Make static. |
| |
| * arm.h (*_SPEC): Remove all references to mle/mbe. |
| * arm/coff.h (MULTILIB_DEFAULTS): Likewise. |
| * arm/t-bare (MULTILIB_OPTIONS): Change options mbe/mle to mbig-endian |
| and mlittle-endian. |
| (MULTILIB_MATCHES): Nothing matches that matters. |
| |
| Mon May 12 20:42:20 1997 Mike Stump <mrs@cygnus.com> |
| |
| * except.c (expand_start_all_catch): If the machine needs a |
| nonlocal_goto_receiver, add one at the start of the exception |
| handler. |
| (expand_leftover_cleanups): Likewise. |
| |
| Mon May 12 17:36:28 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mips.c (move_operand): Accept any general operand after reload |
| has started. |
| |
| Fri May 9 14:29:33 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.md (udivmodhi4, divmodhi4): Remove expander, give |
| corresponding pattern [u]divmodhir4 name. Clear MDR register |
| in the udivmodhi4 pattern itself. |
| (clear_mdr): Delete pattern. |
| |
| Thu May 8 18:20:30 1997 Richard Earnshaw (rearnshaw@cambridge.arm.com) |
| |
| * arm/aout.h (ASM_OUTPUT_LONG_DOUBLE): Delete call to |
| arm_increase_location. |
| (ASM_OUTPUT_{DOUBLE,FLOAT,INT,SHORT,CHAR,BYTE,ASCII,SKIP}): Likewise. |
| (ASM_OUTPUT_ALIGN): Delete all code refering to arm_text_location. |
| |
| * arm.c (arm_increase_location, get_prologue_size): Delete. |
| (arm_naked_function_p): Add declaration. |
| (arm_pic_register): Define. |
| (all_procs): Delete entries for arm{60,620,70,7d,7di,700i,710c}; add |
| entries for arm{7m,7500fe,8}, strongarm and strongarm110. |
| (arm_override_options): Rework so that configure can properly set |
| the default processor type. Add a warning that PIC code is not yet |
| supported. |
| (legitimate_pic_operand_p, legitimize_pic_address): New functions. |
| (is_pic, arm_finalize_pic): New functions. |
| (arm_adjust_cost): New function. |
| (const_pool_offset, arm_backwards_branch, short_branch): Delete. |
| (arm_insn_not_targeted): Delete. |
| (add_constant): If generating AOF syntax, then handle pic specially. |
| (output_ascii_pseudo_op): Delete calls to arm_increase_location. |
| (function_really_clobbers_lr): Calls followed by a barrier don't |
| clobber the link register. |
| (output_func_prologue): Handle AOF syntax pic code. |
| (output_func_epilogue): Handle cases where lr_save_eliminated is set. |
| Delete call to arm_increase_location. |
| (arm_asm_output_label): Simplify, since we no-longer need to cache the |
| label's address. |
| (aof_pic_entry): New function to keep track of pic symbols. |
| (aof_dump_pic_table): New function. |
| |
| * arm.h (TARGET_CPU_arm*, TARGET_CPU_strongarm*, TARGET_CPU_generic): |
| define. |
| (CPP_ARCH_DEFAULT_SPEC): Set up based on setting of TARGET_CPU_DEFAULT. |
| (CPP_SPEC): Split up into sub-rule calls. |
| (CPP_CPU_SPEC): Add default definition. |
| (CPP_APCS_PC_SPEC, CPP_APCS_PC_DEFAULT_SPEC): Add definitions. |
| (CPP_FLOAT_SPEC, CPP_FLOAT_DEFAULT_SPEC): Add definitions. |
| (CPP_ENDIAN_SPEC, CPP_ENDIAN_DEFAULT_SPEC): Add definitions. |
| (CC1_SPEC): Map legacy -m[236] onto -mcpu=.. and -mapcs-{26,32} as |
| appropriate. Similarly for -mbe and -mle to -m{big,little}-endian. |
| (EXTRA_SPECS): Define. |
| (enum processor_type): New types for arm8 and strongarm. |
| (CONDITIONAL_REGISTER_USAGE): Handle flag_pic. |
| (LEGITIMIZE_ADDRESS): Likewise. |
| (ADJUST_COST): Define. |
| (PIC_OFFSET_TABLE_REGNUM): Define. |
| (FINALIZE_PIC): Define. |
| (LEGITIMATE_PIC_OPERAND_P): Define. |
| (OUTPUT_INT_ADDR_CONST): Define. |
| (ASM_OUTPUT_MI_THUNK): Delete calls to arm_increase_location. |
| (MASK_RETURN_ADDR): Use TARGET_APCS_32 not TARGET_6. |
| |
| * arm.md (attr cpu): Add new cpu types for arm8 and strongarm. |
| (attr ldsched): New attribute, set if processor has a load_delay slot. |
| (function_unit core): Rework to handle load delay slots. |
| (function_unit loader): New function unit. |
| (movsi): Handle pic. |
| (pic_load_addr): New expand. |
| (*pic_load_addr_based_insn, pic_add_dot_plus_eight): New patterns. |
| (peepholes to cause flow to return to a label after a function call): |
| Delete, these have been disabled for a while now. |
| |
| * arm/riscix.h (CPP_SPEC): Rewrite using new sub-components. |
| (SUBTARGET_CPU_DEFAULT): Set to TARGET_CPU_arm2. |
| * arm/riscix1-1.h (CPP_SPEC): Rewrite using new sub-components. |
| (SUBTARGET_CPU_DEFAULT): Set to TARGET_CPU_arm2. |
| * arm/semi.h: (CPP_SPEC): Delete. |
| (PROCESSOR_DEFAULT): Delete. |
| (CPP_APCS_PC_DEFAULT_SPEC): Define. |
| * arm/semiaof.h (CPP_SPEC): Delete. |
| (CPP_APCS_PC_DEFAULT_SPEC): Define. |
| * arm/t-semi (LIBGCC1_TEST): Don't build it. |
| (MULTILIB_{OPTIONS,DIRNAMES,EXCEPTIONS}): Build a suitable set of |
| cross libraries. |
| (LIBGCC): Set to stmp-multilib. |
| (INSTALL_LIBGCC): Set to install-multilib. |
| |
| Thu May 8 15:20:46 1997 Stan Cox <coxs@dg-rtp.dg.com> |
| |
| * i386.c (output_float_compare): For pentiumpro use fcomip |
| followed by a float stack pop for "compare;pop;pop" cases. |
| |
| Thu May 8 13:20:20 1997 Chris Torek <torek@elf.bsdi.com> |
| |
| * fold-const.c (fold, truth_andor): Disable optimization for |
| side effects on RHS. |
| |
| Wed May 7 15:43:57 1997 Mike Stump <mrs@cygnus.com> |
| |
| * except.c (start_dynamic_handler): Fix so that we can use |
| __builtin_setjmp, and default to using __builtin_setjmp instead of |
| setjmp. |
| * expr.c (expand_builtin_setjmp): New routine, split out from |
| existing inline code from expand_builtin. |
| (expand_builtin): Split out code into expand_builtin_setjmp. |
| * expr.h (expand_builtin_setjmp): Add declaration. |
| * libgcc2.c (__sjthrow): Default to using __builtin_setjmp instead |
| of setjmp. |
| (__sjpopnthrow): Likewise. |
| * optabs.c (init_optabs): Likewise. |
| |
| Wed May 7 18:01:24 1997 Samuel Figueroa <Samuel_Figueroa@next.com> |
| |
| * rs6000.md (insv): Only combine insert with shift if |
| remaining source bits >= destination field size. |
| |
| Tue May 6 15:48:52 1997 Jason Merrill <jason@gerbil.cygnus.com> |
| |
| * dwarf2out.c (dwarf2out_begin_prologue): Increment |
| current_funcdef_number here. |
| (dwarf2out_end_epilogue): Not here. |
| |
| Mon May 5 18:52:32 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * h8300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV. |
| (shift_one, shift_two): Set CC_NO_CARRY as needed. Remove |
| references to CC_OVERFLOW_0. |
| (emit_a_shift): Similarly. |
| * h8300.h (CC_OVERFLOW_0): Remove. |
| * h8300.md: Use set_zn and set_znv for cc0 tracking. |
| (bCC): Restore the comparison is CC_OVERFLOW_UNUSABLE is set and |
| the comparison needs the overflow bits. |
| |
| * mn10300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV. |
| * mn10300.h (CC_NO_CARRY): Define. |
| * mn10300.md: Use "set_zn" and "set_znv" to more accurately |
| describe cc0 status. |
| |
| Fri May 2 17:00:33 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * dwarf2out.c: Reorganize, moving .debug_frame support to the top |
| of the file, and compile it if INCOMING_RETURN_ADDR_RTX is defined |
| even if DWARF2_DEBUGGING_INFO isn't. |
| (EH_FRAME_SECTION): New macro. |
| (output_call_frame_info): Handle .eh_frame variant. |
| (dwarf2out_def_cfa): Update cfa_*{reg,offset}. |
| (dwarf2out_frame_debug): Move cfa_*{reg,offset} to file scope. |
| (dwarf2out_end_epilogue): Increment current_funcdef_number here. |
| (dwarf2out_decl): Not here. |
| (dwarf2out_frame_init, dwarf2out_frame_finish): New fns. |
| (dwarf2out_init, dwarf2out_finish): Call them. |
| (output_die): Add missing 'case 8:' |
| (dwarf2out_decl): Revert other context_die = NULL change. |
| (add_bound_info): Restore default case. |
| |
| Fri May 2 15:30:16 1997 Doug Evans <dje@seba.cygnus.com> |
| |
| * m32r/m32r.h (LIT_NAME_P): New macro. |
| (SMALL_NAME_P): Use it. |
| (ASM_OUTPUT_ALIGNED_COMMON): Don't output to scommon if -msdata=none. |
| * m32r/m32r.c (addr24_operand): Handle literals. |
| (m32r_output_function_prologue): Use IMMEDIATE_PREFIX. |
| (m32r_output_function_epilogue): Likewise. Use shorter add insn if |
| able. |
| |
| Fri May 2 14:40:44 1997 David Edelsohn <edelsohn@mhpcc.edu> |
| |
| * rs6000.h (RS6000_ALIGN): Macro renamed from ALIGN. |
| * rs6000.c (rs6000_stack_info): Use it. |
| |
| Fri May 2 14:15:54 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload1.c (reload_cse_noop_set_p): When checking the values |
| equivalent to sreg, make sure the mode is right. |
| |
| Fri May 2 12:53:03 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * reload1.c (reload_cse_invalidate_regno): Properly set |
| the mode for invalidate_regno_rtx. |
| |
| Thu May 1 14:57:35 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.md (call_internal_symref): Fix typo. |
| |
| Thu May 1 14:44:17 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * mips.c (mips_asm_file_start): Use new macro TARGET_FILE_SWITCHING. |
| (mips_asm_file_end): Likewise. |
| * mips.h (TARGET_FILE_SWITCHING): Define. |
| (NO_DBX_FUNCTION_END): Define. |
| |
| Thu May 1 09:08:40 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * m68k.c (output_addsi3): Replace "\\;" by "\n\t" in |
| assembler templates. |
| |
| Thu May 1 09:00:42 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * integrate.c (subst_constants, case SUBREG): Cancel changes once |
| done with result. |
| |
| Wed Apr 30 19:45:56 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * mips.c (override_options): Set mips_split_addresses only if |
| TARGET_SPLIT_ADDRESSES is set. |
| * mips.h (MASK_SPLIT_ADDR, TARGET_SPLIT_ADDRESSES): New macros. |
| (TARGET_SWITCHES): Add -msplit-addresses, -mno-split-addresses. |
| * configure (mips*-*-ecoff*, mips*-*-elf*): Set MASK_SPLIT_ADDR |
| bit in target_cpu_default2. |
| |
| * flags.h (current_function_is_thunk): Add extern to declaration. |
| |
| * dbxout.c (dbxout_function): Test NO_DBX_FUNCTION_END at run time |
| instead of compile time. |
| |
| * unroll.c (set_dominates_use): In second loop, add check for copy_end. |
| |
| * mips.md (paradoxical_extendhidi2, paradoxical_extendqidi2): New |
| patterns. |
| |
| Wed Apr 30 02:23:24 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * output.h (named_section): Add reloc argument. |
| (DECL_READONLY_SECTION): New macro. |
| * varasm.c (named_section): Add reloc argument, pass it to |
| ASM_OUTPUT_SECTION_NAME. |
| (UNIQUE_SECTION, UNIQUE_SECTION_P): Provide defaults. |
| (function_section): Pass reloc argument to named_section. |
| (variable_section, exception_section): Likewise. |
| (output_constant_def_contents): Likewise. |
| (assemble_start_function): Use UNIQUE_SECTION_P. UNIQUE_SECTION is |
| now a statement. |
| (assemble_variable): Likewise. |
| * mips/iris6.h (ASM_OUTPUT_SECTION_NAME): Add reloc arg, |
| use DECL_READONLY_SECTION. |
| * psos.h, ptx4.h, a29k.h, alpha/elf.h, arm/coff.h, h8300.h: Likewise. |
| * i386/go32.h, i386/sco5.h, m68k/coff.h, mips/elf64.h: Likewise. |
| * mips/netbsd.h, pa.h, rs6000/sysv4.h, sh.h, sparc/sysv4.h: Likewise. |
| * config/svr4.h (SELECT_SECTION): Use DECL_READONLY_SECTION. |
| (ASM_OUTPUT_SECTION_NAME): Likewise, add reloc argument. |
| (MAKE_DECL_ONE_ONLY): Just set DECL_WEAK. |
| (UNIQUE_SECTION, UNIQUE_SECTION_P): Define. |
| * i386/cygwin32.h (UNIQUE_SECTION_P): Define. |
| (SUPPORTS_ONE_ONLY): Define. |
| (MAKE_DECL_ONE_ONLY): Lose. |
| (ASM_OUTPUT_SECTION_NAME): Add reloc arg, use DECL_READONLY_SECTION. |
| * i386/winnt.c (i386_pe_unique_section): Add reloc arg, |
| use DECL_READONLY_SECTION. |
| |
| * mips/iris6.h (CTORS_SECTION_ASM_OP): Change aligment based on ABI. |
| (DTORS_SECTION_ASM_OP): Likewise. |
| |
| Tue Apr 29 16:08:07 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa/lib1funcs.asm (divnorm, modnorm, exitdiv): Fix code to |
| negate SImode values. |
| |
| Tue Apr 29 12:54:14 1997 Mike Stump <mrs@cygnus.com> |
| |
| * except.c (expand_eh_region_start_tree): Add DECL argument so we |
| can better track why the region was made for error reporting. |
| * except.h (expand_eh_region_start_tree): Likewise. |
| * tree.h (expand_dhc_cleanup): Likewise. |
| (expand_dcc_cleanup): Likewise. |
| * except.c (expand_eh_region_start_for_decl): New routine. |
| * except.h (expand_eh_region_start_for_decl): Likewise. |
| * stmt.c (expand_decl_cleanup): Add DECL to call of |
| expand_eh_region_start_tree. |
| (expand_dcc_cleanup): Likewise. |
| (expand_dhc_cleanup): Likewise. |
| |
| (expand_start_case): Switches introduce conditional contexts. |
| (expand_start_case_dummy): Likewise. |
| (expand_start_case_dummy): Likewise. |
| (expand_end_case): Likewise. |
| |
| Tue Apr 29 11:45:09 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * dwarf2out.c (dwarf2out_decl): Undo earlier change. |
| (constant_size): Likewise. |
| (gen_subprogram_die): Handle NULL context_die. |
| |
| * mips/iris6.h (ASM_OUTPUT_CONSTRUCTOR): Fix for -mabi=64. |
| (ASM_OUTPUT_DESTRUCTOR): Likewise. |
| |
| Mon Apr 28 09:10:19 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * h8300.c (push_order, pop_order): Add missing initializer |
| entries. |
| |
| Fri Apr 25 19:39:43 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * h8300.c (output_adds_subs): check for adding 0. |
| |
| Fri Apr 25 14:52:31 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * configure (i[3456]86-*-freebsdelf*, i[3456]86-*-freebsd*): Use |
| t-freebsd instead of x-freebsd. |
| * i386/t-freebsd: Renamed from x-freebsd. |
| |
| Fri Apr 25 12:16:20 1997 Stan Cox <coxs@dg-rtp.dg.com> |
| |
| * go32.h (DBX_*): Use definitions from config/dbxcoff.h instead. |
| |
| Fri Apr 25 11:55:54 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * i386/cygwin32.h (MULTIPLE_SYMBOL_SPACES): Define. |
| |
| Thu Apr 24 18:32:56 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * i386/winnt.c (i386_pe_unique_section): New fn. |
| * i386/cygwin32.h (UNIQUE_SECTION): Define. |
| (MAKE_DECL_ONE_ONLY): Define. |
| (ASM_OUTPUT_SECTION_NAME): Support DECL_ONE_ONLY. |
| |
| * c-decl.c (implicitly_declare): Don't set DECL_ARTIFICIAL. |
| |
| Thu Apr 24 17:11:23 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add |
| TARGET_5200 support. |
| |
| Thu Apr 24 16:39:25 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * stmt.c (pushcase_range): Check for null range first. |
| |
| Wed Apr 23 23:06:28 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload1.c (reload_cse_record_set): Use push_operand to check for |
| changes to the stack pointer. |
| |
| Wed Apr 23 19:56:01 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * calls.c (expand_call): If we're in a thunk, pass through invisible |
| references instead of making a copy. |
| * flags.h: Add current_function_is_thunk. |
| * function.c: Likewise. |
| (init_function_start): Initialize it. |
| (push_function_context_to): Save it. |
| (pop_function_context_from): Restore it. |
| * function.h (struct function): Add is_thunk. |
| |
| Wed Apr 23 17:47:25 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.c (secondary_reload_class): Handle more cases where we |
| need secondary reloads. |
| (impossible_plus_operand): Accept anything that involves addition |
| of the stack pointer. |
| * mn10300.md (reload_insi): Always load the stack pointer into |
| the destination (which is always an address register). |
| * mn10300.h (STORE_FLAG_VALUE): Remove definition. |
| * xm-mn10300.h: Declare malloc, realloc, calloc and free. |
| |
| Wed Apr 23 14:28:30 1997 Mike Stump <mrs@cygnus.com> |
| |
| * expr.h (sjthrow_libfunc): Add support for setjmp/longjmp based |
| exception handling. |
| (sjpopnthrow_libfunc): Likewise. |
| (terminate_libfunc): Likewise. |
| (setjmp_libfunc): Likewise. |
| (longjmp_libfunc): Likewise. |
| (get_dynamic_handler_chain_libfunc): Likewise. |
| * expr.c (expand_expr, case TRY_CATCH_EXPR): Likewise. |
| (expand_expr, case POPDCC_EXPR): Likewise. |
| (expand_expr, case POPDHC_EXPR): Likewise. |
| * stmt.c (mark_block_as_eh_region): Likewise. |
| (mark_block_as_not_eh_region): Likewise. |
| (is_eh_region): Likewise. |
| (conditional_context): Likewise. |
| (expand_start_bindings): Likewise. |
| (expand_end_bindings): Likewise. |
| (expand_decl_cleanup): Likewise. |
| (expand_dcc_cleanup): Likewise. |
| (expand_dhc_cleanup): Likewise. |
| (expand_cleanups): Likewise. |
| * tree.h (mark_block_as_eh_region): Likewise. |
| (mark_block_as_not_eh_region): Likewise. |
| (is_eh_region): Likewise. |
| (conditional_context): Likewise. |
| (expand_dhc_cleanup): Likewise. |
| * except.c (exception_via_longjmp): Likewise. |
| (protect_cleanup_actions_with_terminate): Likewise. |
| (current_function_dhc): Likewise. |
| (current_function_dcc): Likewise. |
| (add_partial_entry): Likewise. |
| (get_dynamic_handler_chain): Likewise. |
| (get_dynamic_cleanup_chain): Likewise. |
| (start_dynamic_cleanup): Likewise. |
| (start_dynamic_handler): Likewise. |
| (expand_eh_region_start_tree): Likewise. |
| (expand_eh_region_start): Likewise. |
| (expand_eh_region_end): Likewise. |
| (emit_throw): Likewise. |
| (expand_leftover_cleanups): Likewise. |
| (expand_start_all_catch): Likewise. |
| (expand_end_all_catch): Likewise. |
| (protect_with_terminate): Likewise. |
| (start_eh_unwinder): Likewise. |
| (end_eh_unwinder): Likewise. |
| (init_eh_for_function): Likewise. |
| (save_eh_status): Likewise. |
| (restore_eh_status): Likewise. |
| (exception_optimize): Likewise. |
| * optabs.c (sjthrow_libfunc): Likewise. |
| (sjpopnthrow_libfunc): Likewise. |
| (terminate_libfunc): Likewise. |
| (setjmp_libfunc): Likewise. |
| (longjmp_libfunc): Likewise. |
| (get_dynamic_handler_chain_libfunc): Likewise. |
| (init_optabs): Likewise. |
| * except.h: Likewise. |
| * libgcc2.c (__default_terminate): Likewise. |
| (__terminate): Likewise. |
| (__get_dynamic_handler_chain): Likewise. |
| (__sjthrow): Likewise. |
| (__sjpopnthrow): Likewise. |
| * toplev.c (f_options): Likewise. |
| * tree.def (TRY_CATCH_EXPR): Likewise. |
| (POPDHC_EXPR): Likewise. |
| (POPDCC_EXPR): Likewise. |
| * config/pa/pa.h: JMP_BUF_SIZE define. |
| * config/sparc/sparc.h: JMP_BUF_SIZE define. |
| |
| * expr.h (cleanups_this_call): Transform uses of cleanups_this_call |
| into uses of the cleanups managed by the block code |
| (expand_start_bindings and friends). Remove defer_cleanups_to and |
| expand_cleanups_to, and use start_cleanup_deferal and |
| end_cleanup_deferal instead. Add exception_region, |
| target_temp_slot_level, conditional_code, |
| last_unconditional_cleanup and cleanup_ptr to struct nesting to |
| facilitate conditional cleanups. |
| * expr.c (cleanups_this_call): Likewise. |
| (init_expr): Likewise. |
| (save_expr_status): Likewise. |
| (restore_expr_status): Likewise. |
| (store_expr): Likewise. |
| (expand_expr): Likewise. |
| (defer_cleanups_to): Likewise. |
| (expand_cleanups_to): Likewise. |
| (do_jump, case TRUTH_ANDIF_EXPR): Likewise. |
| (do_jump, case TRUTH_ORIF_EXPR): Likewise. |
| (do_jump, case COND_EXPR): Likewise. |
| * stmt.c (struct nesting): Likewise. |
| (expand_return): Likewise. |
| (expand_start_bindings): Likewise. |
| (expand_end_bindings): Likewise. |
| (expand_cleanups): Likewise. |
| (start_cleanup_deferal): Likewise. |
| (end_cleanup_deferal): Likewise. |
| * tree.h (start_cleanup_deferal): Likewise. |
| (end_cleanup_deferal): Likewise. |
| * calls.c (expand_call): Likewise. |
| * function.h (struct function): Likewise. |
| |
| * except.c (asynchronous_exceptions): Support |
| -fasynchronous_exceptions. |
| (can_throw): Likewise. |
| * toplev.c (f_options): Likewise. |
| |
| * flags.h (flag_short_temps): Remove support for short temps. |
| * calls.c (expand_call): Likewise. |
| * toplev.c (flag_short_temps): Likewise. |
| |
| * stmt.c (expand_start_target_temps): Add for convenience. |
| (expand_end_target_temps): Likewise. |
| * except.c (jumpif_rtx): Likewise. |
| * except.c (jumpifnot_rtx): Likewise. |
| |
| * stmt.c: Remove all traces of empty_cleanup_list. |
| |
| Wed Apr 23 17:26:40 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload1.c (reload_cse_mem_conflict_p): Don't assume that a |
| SUBREG can not conflict with a MEM. |
| |
| Wed Apr 23 09:48:58 1997 Oliver Kellogg (oliver.kellogg@space.otn.dasa.de) |
| |
| * 1750a.md (cmphi): Fixed when next CC user is unsigned. |
| (mov[hq]i-[23]): New patterns for mem-indirect moves. |
| (movhf,movtqf): Corrected. |
| * 1750a.c (memop_valid): Memory indirection now valid. |
| (nonindirect_operand): Remove. |
| (print_operand): Fix the 'J' output modifier. |
| * 1750a.h (FRAME_POINTER_REQUIRED): Not required. |
| (INITIAL_FRAME_POINTER_OFFSET,FIX_FRAME_POINTER_ADDRESS): Undefine. |
| (FUNCTION_PROLOGUE,FUNCTION_EPILOGUE): Honor -fomit-frame-pointer. |
| (ELIMINABLE_REGS,CAN_ELIMINATE,INITIAL_ELIMINATION_OFFSET): Defined. |
| (PREFERRED_RELOAD_CLASS): Corrected. |
| (CONST_COSTS,ADDRESS_COST,REGISTER_MOVE_COST,MEMORY_MOVE_COST): |
| Slight adjustments. |
| (ASM_APP_ON,ASM_APP_OFF): Corrected. |
| * ms1750.inc (DUCR.M,DUC.M): Defined. |
| |
| Wed Apr 23 09:41:35 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * reload.c (push_reload): Fix last argument of the call to |
| find_dummy_reload. |
| |
| Wed Apr 23 09:29:14 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * configure (i[3456]86-next-*, m68k-next-nextstep{2,3}*): |
| Remove out_file and add extra_objs. |
| * config/nextstep.c: Add includes for config.h, stdio.h, and flags.h. |
| * {i386,m68k}/t-next (nextstep.o): New rule. |
| * m68k/next.h: Remove include of machmode.h. |
| * {i386,m68k}/next.c: Files deleted. |
| |
| Tue Apr 22 20:45:29 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * sparc.h (DBX_CONTIN_LENGTH): Shrink to 1000. |
| |
| Tue Apr 22 18:21:20 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * dwarf2out.c (gen_variable_dir): Add test for DW_AT_declaration to |
| the old_die if statement, and delete assertion for it. |
| (decl_ultimate_origin): Remove last change. |
| |
| Tue Apr 22 10:22:27 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.c (expand_prologue): End the current sequence before |
| counting the tst insns in the current function. Start a new |
| one before emitting any prologue instructions. |
| |
| * mn10300.h (REGISTER_MOVE_COST): Bump up cost of moves in the |
| same class. |
| |
| * mn10300.md (untyped_call): New expander. |
| |
| Mon Apr 21 16:30:21 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * cse.c (fold_rtx, case PLUS): When seeing if negative of constant |
| is around, make sure not dealing with largest negative. |
| |
| Mon Apr 21 13:57:53 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * mips/t-ecoff: Set TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS. |
| |
| * m68k.c (output_addsi3): New function. From addsi3 pattern. |
| * m68k.h (output_addsi3): Add declaration. |
| * m68k.md (movqi+2): Add address registers. |
| (movxf+1): Disable for TARGET_5200. |
| (movxf+2): New pattern for TARGET_5200. |
| (addsi3): Add define_expand. Move code to output_addsi3. |
| (addsi3_internal): Renamed from addsi3. Disable for TARGET_5200. |
| (addsi3_5200): New pattern for TARGET_5200. |
| |
| Sun Apr 20 10:45:35 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * fold-const.c (operand_equal_p): Constants are not equal if there |
| has been an overflow. |
| |
| * toplev.c (compile_file): Shorten "branch-probabilities" in |
| output of times. |
| |
| * alpha/vms.h (MOD[SD]I3_LIBCALL): Call ots$rem, not ots$mod. |
| (DWARF2_DEBUGGING_INFO): Define. |
| |
| * alpha.c (alpha_need_linkage): Call get_identifier. |
| |
| * rs6000.c (rs6000_output_load_toc_table): New function. |
| (output_prolog): Call it instead of doing it directly. |
| * rs6000.md (nonlocal_goto_receiver): New pattern. |
| |
| * dwarf2out.c: Major cleanup; mostly reformatting. |
| Include expr.h. |
| Undefine inline ifndef __GNUC__; never define to include static. |
| Add "static" to header of all inlined functions. |
| Add declarations for all static functions, with prototypes. |
| (addr_const_to_string): Use HOST_WIDE_INT_PRINT_* macros. |
| (add_AT_*, new_{die,loc_descr,cfi): Don't check for xmalloc |
| returning zero. |
| (modified_type_die): Add missing parm on recursive call. |
| ({reg,based}_loc_descriptor): Add missing arg to call to new_loc_descr. |
| (add_const_value_attribute): Use REAL_VALUE_TYPE for fp calculations. |
| (output_call_frame_info): Add missing arg to output_cfi call. |
| (dwarf2out_def_cfa): Local variable OLD_REG must be unsigned long. |
| * Makefile.in (dwarf2out.o): Includes expr.h. |
| |
| * dwarf2out.c: Cast first arg in all calls to bzero to char *. |
| (decl_ultimate_origin): Return NULL if equal to decl. |
| (constant_size): Never return more than 4. |
| (value_format, case 8): New case. |
| (dwarf2out_frame_debug): Use HARD_FRAME_POINTER_REGNUM. |
| (based_loc_descr): Likewise. |
| (add_bound_info): Delete default case. |
| Add cases for CONVERT_EXPR and NON_LVALUE_EXPR; treat like NOP_EXPR. |
| Change NOP_EXPR to to recursive call. |
| (add_type_attribute): Ignore unnamed subtype of integral or FP. |
| (gen_subprogram_die): Use reg_loc_descriptor. |
| (dwarf2out_decl): Ignore nested functions. |
| |
| * fix-header.c, protoize.c, gcov.c: Use symbolic codes for exit. |
| |
| * final.c (profile_function): Only call ASM_OUTPUT_REG_{PUSH,POP} |
| if defined. |
| |
| * expr.c ({move,clear}_by_pieces_1, expand_assignment): Ensure |
| we have unshared rtx before changing flags. |
| (store_{constructor,field}): Likewise. |
| (expand_expr, case COMPONENT_REF): Likewise. |
| (store_expr): Check if TEMP and TARGET are same with rtx_equal_p. |
| |
| * emit-rtl.c (change_address, init_emit): Delete forward references. |
| (rtl_obstack, stack_depth, max_stack_depth): Delete extern decls. |
| |
| Fri Apr 18 18:25:52 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * function.c (instantiate_decls): For DECL_INCOMING_RTL, use max |
| of type size and mode size in instantiate_decl call. |
| |
| * fixincludes (sys/lc_core.h): Fix OSF1/4.x namespace pollution. |
| |
| Wed Apr 16 19:36:53 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * dwarf2out.c (add_bound_info): Use a DIE instead of a location |
| expression for variable bounds. Trust a MEM rtx even when |
| optimizing. |
| (DWARF_FRAME_RETURN_COLUMN): Default to FIRST_PSEUDO_REGISTER. |
| |
| * expr.c (expand_expr, case RTL_EXPR): If there is no sequence, |
| don't set it to const0_rtx. |
| * tree.c (array_type_nelts): Don't return any SAVE_EXPRs. |
| |
| Mon Apr 14 18:12:57 1997 David Edelsohn <edelsohn@mhpcc.edu> |
| |
| * rs6000.h (RS6000_ITRUNC, RS6000_UITRUNC): Prepend underscores. |
| (RS6000_MCOUNT): New macro. |
| (ASM_FILE_START): Use RS6000_MCOUNT. |
| * rs6000.c (output_function_profiler): Use RS6000_MCOUNT. |
| * rs6000/aix31.h (RS6000_{ITRUNC,UITRUNC,MCOUNT}): New macros. |
| |
| Mon Apr 14 14:37:27 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.c (can_use_return_insn): Include outgoing argument |
| area in size computation. |
| (expand_prologue): Likewise. No longer diddle with sequences. |
| Put register saves just before outgoing argument area. |
| (expand_epilogue): Similarly. |
| (impossible_plus_operand): New function. |
| * mn10300.h (FRAME_POINTER_REQUIRED): Never require a frame pointer. |
| (ACCUMULATE_OUTGOING_ARGS, OUTGOING_REG_PARM_STACK_SPACE): Define. |
| (impossible_plus_operand): Declare. |
| * mn10300.md (reload_insi): New expander to handle pathological |
| reload cases. |
| (addsi3): Fix CC status. |
| |
| * mn10300.h (FUNCTION_VALUE): Return addresses in $a0. |
| (FUNCTION_VALUE_REGNO_P): Corresponding changes. |
| * mn10300.md (call_value_internal): Allow output to be in an |
| address register. |
| |
| * calls.c (emit_library_call): Handle saving of stack slots when |
| ACCUMULATE_OUTGOING_ARGS is defined. |
| (emit_library_call_value): Likewise. |
| |
| Mon Apr 14 14:48:15 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * sh.md (xtrct_left, xtrct_right): New patterns. |
| |
| * combine.c (get_last_value_validate): New argument insn. |
| Add check for memory reference clobbered by later store. |
| (record_value_for_reg, get_last_values): Pass in new argument. |
| |
| Mon Apr 14 14:03:18 1997 Mike Meissner <meissner@cygnus.com> |
| |
| * configure (powerpc --with-cpu=x): Add embedded powerpcs and 604e. |
| |
| * rs6000.c (rs6000_override_options): Recognize -mcpu=801, -mcpu=823, |
| and -mcpu=604e. |
| |
| Sun Apr 13 18:43:16 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload1.c (invalidate_regno_rtx): New static variable. |
| (reload_cse_invalidate_regno): Check whether any earlier registers |
| have a multi-register value which includes the register we are |
| invalidating. |
| (reload_cse_regs): Initialize invalidate_regno_rtx. |
| |
| * reload1.c (reload_cse_record_set): When setting reg_values for a |
| copy from one register to another, use gen_lowpart_common to |
| adjust the value correctly if the mode changes. |
| |
| Sun Apr 13 17:24:48 1997 Doug Evans <dje@cygnus.com> |
| |
| * expr.c (move_block_from_reg): Try using an integral mov operation |
| first. |
| |
| * calls.c (expand_call): When copying unaligned values into a register, |
| zero out the register first rather than emitting a clobber. |
| |
| * integrate.c (copy_rtx_and_substitute): If FRAME_GROWS_DOWNWARD |
| and regno == VIRTUAL_STACK_VARS_REGNUM, round size of stack slot up |
| before calling assign_stack_temp. |
| |
| Sun Apr 13 15:29:38 1997 Ulrich Drepper <drepper@cygnus.com> |
| |
| * enquire.c (fake_f_rep): Add missing element name in cast. |
| |
| Sun Apr 13 15:20:05 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * stor-layout.c (layout_record, PCC_BITFIELD_TYPE_MATTERS): |
| Fix sign bug in last change. |
| |
| Sun Apr 13 15:03:38 1997 J.T. Conklin <jtc@netbsd.org> |
| |
| * m68k.md (movstricthi): Remove extraneous comparisons. |
| |
| * configure (*-*-netbsd): tmake_file now t-netbsd; delete xmake_file. |
| * config/t-netbsd: New file. |
| * config/x-netbsd: Removed. |
| |
| Sun Apr 13 14:51:25 1997 Richard Earnshaw (rearnsha@armltd.co.uk) |
| |
| * cse.c (canon_reg, cse_insn): Don't examine insn_n_dups if |
| recog_memoized fails to find a match. |
| |
| Sun Apr 13 14:17:26 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload1.c (reload_cse_noop_set_p): Add insn parameter. Change |
| all callers. If deleting the instruction, remove any earlier |
| REG_DEAD note for DREG. |
| (reload_cse_simplify_set): If simplifying, remove any earlier |
| REG_DEAD note for the new source register. |
| |
| Sun Apr 13 14:12:08 1997 Pat Rankin <rankin@eql.caltech.edu> |
| |
| * libgcc2 (L_bb, L_exit): Use 0 rather than NULL for null pointers. |
| |
| Sun Apr 13 12:53:03 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * m68k/linux.h (ASM_SPEC): Define. |
| (STRUCT_VALUE_REGNUM, STATIC_CHAIN_REGNUM, INITIALIZE_TRAMPOLINE): |
| Remove definitions, undoing the change of Mar 20 1996. |
| |
| * m68k.c (output_move_qimode): Optimize pushing one byte if source |
| operand does not use stack pointer. |
| |
| * m68k.md (rotl[shq]i3, rotl[hq]i3+1): Don't directly modify operand. |
| |
| * m68k.md (tstdi): Add missing parallel around the pattern. |
| |
| Sun Apr 13 12:51:00 1997 Paul Eggert <eggert@twinsun.com> |
| |
| * cccp.c, cpplib.c (do_include): Diagnose #import and |
| #include_next if pedantic and if not in a system header. |
| (do_warning): #warning now causes an error if -pedantic-errors |
| is given; this is needed since #warning isn't ANSI. |
| |
| * toplev.c (lang_options): Add -Wundef, -Wno-undef. |
| * c-decl.c (c_decode_option): Ignore -Wundef, -Wno-undef. |
| |
| * cccp.c, cexp.y (warn_undef): New variable. |
| * cpplib.h (struct cpp_options): New member warn_undef. |
| (CPP_WARN_UNDEF): New macro. |
| |
| * cccp.c (main), cpplib.c (cpp_handle_options): Set warn_undef |
| from -Wundef and -Wno-undef. |
| |
| * cppexp.c (cpp_lex) New arg skip_evaluation. |
| (cpp_parse_expr): Pass skip_evaluation to cpp_lex. |
| Abort if cpp_lex returns NAME. |
| |
| * cexp.y (exp), cppexp.c (cpp_lex): Optionally warn about undefined |
| identifiers that evaluate to 0. |
| |
| Sun Apr 13 11:43:16 1997 Joel Sherrill <joel@OARcorp.com> |
| |
| * configure (hppa1.1-*-rtems*): New target. |
| * mips/rtems.h: New file. |
| |
| Sun Apr 13 09:48:26 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * gcov.c (print_usage, open_files): Use FATAL_EXIT_CODE. |
| * collect2.c (fatal_perror, fatal, collect_wait): Likewise. |
| |
| * sparc.c (eligible_for_delay_slot): Clean up and make to agree |
| precisely with patterns in MD file. |
| * sparc.md (*return_addsi): Change condition to exclude both ints. |
| (*return_adddi): Likewise. |
| (*return_subsi): New pattern. |
| |
| * recog.c (validate_replace_rtx_1, case MINUS): New case. |
| |
| Sun Apr 13 08:20:24 1997 Thomas Bushnell <thomas@gnu.ai.mit.edu> |
| |
| * i386/gnu.h (TARGET_VERSION): Redefine. |
| |
| Sun Apr 13 08:15:31 1997 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE> |
| |
| * c-typeck.c (lookup_field): Don't recurse unless FIELD is |
| a RECORD_TYPE or UNION_TYPE. |
| |
| * final.c (profile_function): Save the static chain register |
| around the call to the profiler function. |
| |
| * loop.c (invariant_p, case REG): Pointers into frame are not |
| invariants if function has nonlocal gotos. |
| * reload1.c (reload): If function has nonlocal label, mark all |
| caller-saved regs as used. |
| |
| Fri Apr 11 16:49:06 1997 Doug Evans <dje@seba.cygnus.com> |
| |
| * m32r.h (REG_ALLOC_ORDER): Restore to original setting. |
| |
| * m32r.h (UPPER16_P): Fix calculation. |
| * m32r.c (two_insn_const_operand): New function. |
| (m32r_print_operand): Handle 'X'. |
| * m32r.md (movsi): Tweak. |
| (*movsi_insn): Output hex value of constants too. |
| (movsi define_split): Add. |
| (andsi3,orsi3,xorsi3): Output hex value of constants too. |
| |
| Thu Apr 10 18:39:33 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * sh.md (sne): Modified to use negc instead of xor. |
| (sne+1): New define_split for new sne pattern. |
| * sh.c (output_stack_adjust): Reorganize code for readability. |
| If size is negative, negate and subtract it instead of adding it. |
| |
| Wed Apr 9 13:51:07 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * sh.c (output_stack_adjust): When splitting an adjustment into two |
| parts, make sure the stack is aligned at all times. |
| |
| Tue Apr 8 12:34:38 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.h (RETURN_ADDR_RTX): Define. |
| |
| Mon Apr 7 19:19:57 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.c (count_tst_insns): New function. |
| (expand_prologue): Load zero into data and/or address registers |
| if any are free and the function has optimizable tst insns. |
| (output_tst): If a suitable register is known to have the |
| value zero, use it instead of searching for a suitable register. |
| * mn10300.h (zero_dreg, zero_areg): Declare. |
| (FRAME_POINTER_NEEDED): Frame pointers are not needed if the |
| outgoing argument size is zero. |
| * mn10300.md (movXX): Optimize loading zero into an address |
| register if possible. Optimize loading a DF/DI mode value |
| into an address register from a constant memory address. |
| (addsi3): Provide alternative which doesn't require a matching |
| inout operand. |
| (return): Optimize consecutive return instructions. |
| |
| Mon Apr 7 17:30:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * mips/iris5.h (SUBTARGET_CC1_SPEC): Define. |
| (LINK_SPEC, STARTFILE_SPEC): Support -static. |
| * mips/iris6.h (SUBTARGET_CC1_SPEC): Define. |
| (STARTFILE_SPEC, LINK_SPEC): Support -static. |
| * mips.h: (SUBTARGET_CC1_SPEC): Define. |
| (CC1_SPEC): Add subtarget_cc1_spec. |
| (EXTRA_SPECS): Add subtarget_cc1_spec. |
| |
| Sun Apr 6 12:24:53 1997 Richard Earnshaw (rearnsha@armltd.co.uk) |
| |
| * arm.md (incscc): Use a match_operand with cc_register to match |
| the condition code register. |
| (decscc, *condbranch, *condbranch_reversed, *mov_scc): Likewise. |
| (*mov_negscc, *mov_notscc, *cond_return): Likewise. |
| (*cond_return_inverted, *ior_scc, *cond_move): Likewise. |
| (insv): New expand. |
| (andsi_notsi_si): Renamed from *andsi_notsi_si. |
| (andsi_not_shiftsi_si): New insn. |
| (*minmax_arithsi): Don't match this insn if operand1 is an |
| eliminable register. |
| ({sin,cos}*): Delete, since the ARM always emulates these its |
| faster to call a library function. |
| (movsicc, *movsicc_insn): Make operand0 an s_register_operand, |
| and operand3 an arm_not_operand. Use cc_register to match the |
| condition code register. |
| (mov[sd]fcc*): Make operand[0,2] s_register_operands, and operand3 |
| the nonmemory_operand. Use cc_register to match the condition |
| code register. |
| (*ifcompare_plus_move): Move before *ifcompare_arith_move. Just do |
| a split for the output. |
| (*ifcompare_move_plus): Similarly, but relative |
| to *ifcompare_move_arith. |
| (*if_plus_move, *if_move_plus): New patterns. |
| (*ifcompare_arith_arith): Simplify the alternatives down to just one, |
| and split the insn before output. |
| (*if_arith_arith, *if_arith_move, *if_move_arith): New patterns. |
| (*ifcompare_move_not, *ifcompare_not_move): Simplify and split the |
| insn before output. |
| (*if_move_not, *if_not_move): New patterns. |
| (*ifcompare_shift_move, *ifcompare_move_shift): Simplify and split the |
| insn before output. |
| (*if_shift_move, *if_move_shift): New patterns. |
| (*ifcompare_shift_shift): Simplify and split the insn before output. |
| (*if_shift_shift): New pattern. |
| (*ifcompare_not_arith, *ifcompare_arith_not): Simplify and split the |
| insn before output. |
| (*if_not_arith, *if_arith_not): New patterns. |
| (*ifcompare_neg_move, *ifcompare_move_neg): Simplify and split the |
| insn before output. |
| (*if_neg_move, *if_move_neg): New patterns. |
| |
| Sat Apr 5 20:17:43 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000/sol-ci.asm (_environ): Don't make _envrion a common |
| variable, the lastest assembler doesn't let common variables also |
| be a weak symbol. |
| |
| Fri Apr 4 18:30:12 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * rs6000/rs6000.md (adddi3): Use non_short_cint_operand instead of |
| non_add_cint_operand. |
| |
| Thu Apr 3 15:08:39 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.c (can_use_return_insn): Add size of fixed stack space |
| for function calls into the size of the frame. */ |
| (expand_prologue, expand_epilogue): Likewise. |
| (initial_offset): Corresponding changes.. |
| * mn10300.h (OUTGOING_REG_PARM_STACK_SPACE): No longer define. |
| (STACK_POINTER_OFFSET): Define. |
| * mn10300.md (call, call_value expanders): Don't adjust the stack |
| pointer here anymore. |
| |
| * mn10300.md (ashlsi3): Remove some alternatives which are no longer |
| needed or desired. |
| |
| Thu Apr 3 15:06:53 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * local-alloc.c (no_conflict_p): Reject sequences with foreign insns. |
| |
| * combine.c (move_deaths): Handle partial REG_DEAD note for |
| multi-reg hard register. |
| |
| * function.c (expand_function_start): Emit queue after expanding |
| each dynamic parameter type. |
| |
| * mips.c (mips_move_2words): Add SIGN_EXTEND support for SYMBOL_REF, |
| LABEL_REF, and CONST operands. |
| |
| * dwarf2out.c: Delete comment referring to README.DWARF. |
| |
| Wed Apr 2 17:21:23 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * rs6000.md (ashrdi3_power): Mark alternative 0 as early_clobber |
| output. |
| |
| * rs6000.md (abssi3_nopower define_split): Switch operands of MINUS. |
| (nabssi3_nopower define_split): Likewise. |
| |
| Tue Apr 1 19:30:01 1997 Mike Stump <mrs@cygnus.com> |
| |
| * libgcc2.c (find_exception_table): Fix to logic to deal with |
| functions that are in their own section, such as template |
| instantiations, that cause overlapping EH tables. |
| |
| Tue Apr 1 17:16:22 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * Makefile.in (USER_H): Add va-mn10300.h |
| |
| * ginclude/stdarg.h: Include va-mn10300.h. |
| * ginclude/varargs.h: Likewise. |
| * ginclude/va-mn10300.h: New file. |
| * mn10300.c (expand_prologue): If current_function_varargs is nonzero, |
| flush d0/d1 back into stack. |
| (mn10300_builtin_saveregs): New function. |
| (function_arg, function_arg_partial_nregs): New functions. |
| (initial_offset): Tweak now that the RP save area is allocated |
| and deallocated around each call again. |
| * mn10300.h (FIRST_PARM_OFFSET): Now 4. |
| (FRAME_POINTER_REQUIRED): Require frame pointer for all non-leaf fcns. |
| (REG_PARM_STACK_SPACE): Now 8 bytes. |
| (FUNCTION_ARG_REGNO_P): Update for new parameter passing conventions. |
| (CUMULATIVE_ARGS, INIT_CUMULATIVE_ARGS): Likewise. |
| (FUNCTION_ARG_ADVANCE, FUNCTION_ARG): Likewise. |
| (FUNCTION_ARG_PARTIAL_NREGS): Likewise. |
| (TRAMPOLINE_TEMPLATE): Don't clobber d0 anymore. |
| (TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE): Corresponding changes. |
| (EXPAND_BUILTIN_SAVEREGS): Define. |
| * mn10300.md (call, call_value patterns): Allocate and deallocate |
| stack slot for return pointer around each call. |
| |
| * mn10300.h (RTX_COSTS): Refine. |
| (CASE_VALUES_THRESHHOLD, NO_FUNCTION_CSE): Likewise. |
| * mn10300.c (output_tst): New function. |
| * mn10300.md (movdi, movdf): Improve code to load constants into regs. |
| (tst insns): Use output_tst to optimize some cases. Add versions to |
| encourage more zero extensions instead of sign extensions of HImode |
| and QImode values. |
| (divsi3, udivsi3): Remove patterns. Replaced by... |
| (divmodsi4, udivmodsi4): New expanders/patterns. |
| (andsi3): Optimize "and" operations with certain constants. |
| |
| Tue Apr 1 09:14:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * sh.h: (ADJUST_COSTS): Define. |
| |
| Fri Mar 28 17:46:13 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * Makefile.in (LANGUAGES): Add gcov. |
| (OBJS): Add profile.o. |
| (STAGESTUFF): Add gcov. |
| (profile.o, gcov.o, gcov): Add rules to build them. |
| (cpp.info, gcc.info, gcc.dvi): Add gcov.texi. |
| (install-common): Install gcov. |
| * combine.c (distribute_notes): Handle REG_BR_PROB and REG_EXEC_COUNT |
| REG_NOTES. |
| * sparc.h (OVERRIDE_OPTIONS): Check profile_arc_flag. |
| * final.c (LONG_TYPE_SIZE): Define. |
| (count_instrumented_arcs): New variable. |
| (end_final, profile_after_prologue, leaf_function_p): Add support |
| for profile_arc_flag. |
| (add_bb): Only call CC_STATUS_INIT if HAVE_cc0. |
| * flags.h (profile_arc_flag, flag_test_coverage, |
| flag_branch_probabilities): Declare. |
| * function.c (expand_function_end): Output NOTE_REPEATED_LINE_NUMBER |
| for last line of function. |
| * integrate.c (expand_inline_function): Output |
| NOTE_REPEATED_LINE_NUMBER after inlined call. |
| * jump.c (jump_optimize, follow_jumps, mark_jump_label): Disable some |
| optimizations when flag_test_coverage and there is a line number note |
| in the way. |
| (invert_jump): Add REG_BR_PROB when flag_branch_probabililties. |
| * libgcc2.c (__bb_exit_func): Support gcov style output. |
| * reorg.c (mostly_true_jump): Use REG_BR_PROB notes when |
| flag_branch_probabilities. |
| * rtl.c (note_insn_name): Add NOTE_REPEATED_LINE_NUMBER. |
| (reg_note_name): Add REG_BR_PROB and REG_EXEC_COUNT. |
| * rtl.h (enum reg_note): Add REG_BR_PROB and REG_EXEC_COUNT. |
| (REG_BR_PROB_BASE): Define. |
| (NOTE_REPEATED_LINE_NUMBER): Define. |
| * sched.c (update_flow_info): Handle REG_EXEC_COUNT and REG_BR_PROB |
| notes. |
| * toplev.c (branch_prob_dump, profile_arc_flag, flag_test_coverage, |
| flag_branch_probabilities, branch_prob_dump_file, branch_prob_time): |
| New variables. |
| (f_options): Add profile-arcs, test-coverage, and |
| branch-probabilities. |
| (compile_file): Set branch_prob_time. Pass flag_test_coverage to |
| init_emit_once. Handle branch_prob_dump. Call init_branch_prob. |
| Call end_branch_prob. Call output_func_start_profiler. |
| (rest_of_compilation): Handle branch_prob_dump. Call new |
| branch_prob pass. |
| (main): Set branch_prob_dump. |
| * gcov.c, profile.c, gcov-io.h, gcov.texi: New files. |
| |
| Thu Mar 27 16:52:52 1997 Stan Cox <coxs@dg-rtp.dg.com> |
| |
| * i386.h (CPP_CPU_DEFAULT): Define if TARGET_CPU_DEFAULT is not set. |
| * i386.h (STACK_BOUNDARY): Define to always be 32. |
| |
| From J"orn Rennecke <amylaar@cygnus.co.uk> |
| * i386.md: (zero_extendhisi2+[12]): use true_regnum instead of REGNO for |
| operand 0. |
| (zero_extendqisi2+3: use reg_overlap_mentioned_p instead of REGNO |
| comparison; use true_regnum instead of REGNO for rtx generation. |
| |
| Wed Mar 26 12:34:21 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload1.c (reload): Call reload_cse_regs. |
| (reg_values): New static variable. |
| (reload_cse_invalidate_regno): New static function. |
| (reload_cse_mem_conflict_p): New static function. |
| (reload_cse_invalidate_mem): New static function. |
| (reload_cse_invalidate_rtx): New static function. |
| (reload_cse_regs): New static function. |
| (reload_cse_regno_equal_p): New static function. |
| (reload_cse_noop_set_p): New static function. |
| (reload_cse_simplify_set): New static function. |
| (reload_cse_check_clobbered): New static variable. |
| (reload_cse_check_src): New static variable. |
| (reload_cse_check_clobber): New static function. |
| (reload_cse_record_set): New static function. |
| |
| Wed Mar 26 07:34:06 1997 Ulrich Drepper <drepper@cygnus.com> |
| |
| * ginclude/stdarg.h (__va_copy): New definition. |
| |
| Tue Mar 25 13:43:36 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * gcc.c (init_spec): If -v, print out that the default spec values |
| were being used. Fix prototype to reflect no arguments. |
| (set_spec): If specs has not been set, set it up with the default |
| specs. |
| (read_specs): Move to later in the file so that startfile_prefixes |
| has been declared. Process "%include <file>" to include another |
| specs file, aborting if the file can't be found. Process |
| "%include_noerr <file>: to include another specs file, giving no |
| error if the file can't be found. Process "%rename var1 var2" to |
| rename a specs variable. Take new argument that indicates whether |
| we are processing the main file. Only process % commands if this |
| is not the main specs file. Change callers. |
| (main): Do not call init_spec if a specs file was found. |
| (set_spec,read_specs,do_spec_1): If DEBUG_SPECS is defined, print |
| debug information. |
| |
| Tue Mar 25 14:43:58 1997 Doug Evans <dje@cygnus.com> |
| |
| * expr.c (emit_push_insn): Delete emission of CLOBBER |
| when doing partial push, no longer necessary. |
| |
| * c-decl.c (grokdeclarator): Pedwarn qualified void function return |
| type. |
| |
| Tue Mar 25 14:28:15 1997 Richard Earnshaw (rearnsha@armltd.co.uk) |
| |
| * reload.c (find_dummy_reload): New parameter earlyclobber. If set |
| then don't use IN for the reload if it also appears elsewhere in |
| the insn. All callers changed. |
| |
| Tue Mar 25 13:20:18 1997 J.T. Conklin <jtc@cygnus.com> |
| |
| * m68k/lb1sf68.asm (udivsi3): Fix hunk from previous patch that |
| did not apply correctly. |
| |
| * m68k.md (tablejump): Use extl to explicitly sign extend |
| index registeron TARGET_5200. |
| * m68k/{apollo68.h,coff.h,linux.h,mot3300.h,pbb.h} |
| (ASM_RETURN_CASE_JUMP): Likewise. |
| |
| * m68k.md (mulsi3): Changed into define_expand. Split insn into |
| m68k and coldfire specific versions with appropriate constraints. |
| |
| * m68k.md (movqi): Disable use of address registers for |
| TARGET_5200. |
| |
| * m68k/lb1sf68.asm (__modsi3, __umodsi3): Use mulsl instruction |
| instead of __mulsi3 function call on the coldfire. |
| |
| * m68k.md (bne0_di): Fix typo in last change. |
| |
| * m68k.md (xorsi3_5200): Correct constraints. |
| |
| * m68k.c (output_move_{si,hi,qi}mode): New functions. |
| * m68k.h (output_move_{si,hi,qi}mode): Declare. |
| |
| * m68k.md (move{si,hi,qi,di}): Changed into define_expands. Split |
| insns into m68k and coldfire specific versions with appropriate |
| constraints. |
| |
| Tue Mar 25 12:18:41 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * Makefile.in (GCC_PASSES): Revert previous change; use |
| cc1$(exeext). |
| |
| Mon Mar 24 16:12:20 1997 Doug Evans <dje@cygnus.com> |
| |
| * m32r/*: New files. |
| * config.sub: Add m32r. |
| * configure: Add m32r. |
| * longlong.h: Add m32r support. |
| * ginclude/{stdarg.h,varargs.h}: Add m32r support. |
| * ginclude/va-m32r.h: New file. |
| |
| Mon Mar 24 15:53:15 1997 Joel Sherrill <joel@OARcorp.com> |
| |
| * rs6000/rtems.h: Change to a near clone of the powerpc-eabi target. |
| * configure (powerpc*-*-rtems): Move before Linux configuration. |
| |
| Mon Mar 24 14:26:37 1997 Gavin Koch <gavin@cygnus.com> |
| |
| * ginclude/va-mips.h: For little endian, eabi, objects |
| less than __va_reg_size are passed in registers. |
| |
| Fri Mar 21 00:48:02 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.c (print_operand): Handle 'N'. |
| |
| * mn10300.c (expand_epilogue): Correctly handle functions |
| with large frames, but no callee register saves. |
| |
| * mn1300.md (movdf, movdi): Handle overlapping moves. |
| |
| * pa.c (compute_movstrsi_length): Handle residuals correctly. |
| |
| Thu Mar 20 13:53:30 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000.c (easy_fp_constant): If -mrelocatable, consider all fp |
| constants to be hard. |
| |
| Mon Mar 20 13:53:30 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * rs6000.md (movdf/movsf define_splits): Add SUBREG support. |
| |
| * rs6000.c (fp_reg_or_mem_operand): Delete. |
| * rs6000.h (PREDICATE_CODES): Remove fp_reg_or_mem_operand. |
| (fp_reg_or_mem_operand): Delete declaration. |
| * rs6000.md (movsf_hardfloat): Use nonimmediate_operand instead |
| of fp_reg_or_mem_operand. |
| |
| Thu Mar 20 08:52:27 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.md (cmpsi): Handle comparing a register with |
| itself by adding zero to the reg. Z bit for such an insn is |
| inverted. |
| * mn10300.c (notice_update_cc): Handle CC_INVERT. |
| |
| * pa.c (emit_move_sequence): Don't lose for a secondary reload |
| to the SAR register if the input is a MEM with an offset that won't |
| fit in 14bits. |
| |
| Wed Mar 19 17:10:44 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * m68k/linux.h (ASM_OUTPUT_MI_THUNK): Define. |
| |
| Wed Mar 19 16:59:34 1997 Paul Eggert <eggert@twinsun.com> |
| |
| * cccp.c, cpplib.c (do_error, do_warning): Fix memory leak. |
| |
| * cccp.c (output_line_directive): Do not output negative line |
| numbers when analyzing directives like `#line 0'. |
| |
| * cexp.y (parse_number, yylex), cccp.c (rescan), cpplib.c |
| (cpp_get_token): Unless -lang-c89 is specified, allow C9X-style |
| hexadecimal floating-point numbers as preprocessor numbers. |
| * cccp.c (c89): New decl. |
| (main): Set it to 1 if -lang-c89. |
| * cpplib.h (struct cpp_options): New member c89. |
| (CPP_C89): New macro. |
| * cpplib.c (unsafe_chars): `p' is unsafe before `-' or `+', since it |
| might generate a C9X-style hexadecimal floating-point number. |
| (cpp_handle_options): Set c89 option to 1 if -lang-c89. |
| |
| Tue Mar 18 17:05:57 1997 Stan Cox <coxs@dg-rtp.dg.com> |
| |
| * i386.h (STACK_BOUNDARY): Determine according to TARGET_ALIGN_DOUBLE. |
| |
| * i386.c (override_options) Make the default alignment 4 for 486, |
| otherwise 2. |
| |
| * i386/freebsd-elf.h (CPP_SPEC): Remove TARGET_CPU_DEFAULT reference. |
| * i386/linux{,-aout,-oldld}.h (CPP_SPEC): Likewise. |
| |
| * i386/go32.h (DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE, |
| NO_STAB_H, ASM_FILE_START, DBX_BLOCKS_FUNCTION_RELATIVE, |
| DBX_FUNCTION_FIRST, DBX_OUTPUT_MAIN_SOURCE_FILE_END, |
| ASM_OUTPUT_SOURCE_LINE): Added to support stabs. |
| (ASM_OUTPUT_SECTION_NAME): Support section attribute. |
| |
| Tue Mar 18 16:12:28 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * final.c (shorten_branches): Split all insns before computing insn |
| lengths. |
| (final_scan_insn, case default): If HAVE_ATTR_length defined, call |
| abort for any insn that has a '#' output template. |
| |
| * expr.c (emit_group_load): Call operand_subword instead of creating |
| an explicit SUBREG. |
| |
| * reload1.c (reload_reg_free_before_p, case |
| RELOAD_FOR_OPERAND_ADDRESS): Conflicts with RELOAD_FOR_OPADDR_ADDR |
| reloads. |
| |
| * configure (alpha-dec-osf[23456789]*): Use install-headers-cpio |
| for osf4. |
| |
| * gcc.c (init_spec): Delete parameter. Always initialize extra_specs. |
| (process_command, main): Change all callers. |
| |
| * combine.c (if_then_else_cond): Call copy_rtx to prevent sharing. |
| |
| Tue Mar 18 14:59:12 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * function.c (assign_parms): Add a REG_EQUIV note to the |
| instruction which copies a parameter into a pseudo-register |
| whenever there is an associated stack slot, even if the parameter |
| actually arrived in a register. |
| |
| Tue Mar 18 14:24:48 1997 Doug Evans <dje@cygnus.com> |
| |
| * configure (alpha-dec-osf[23]): Separate osf[23] case. |
| * alpha.h (LIB_SPEC): -lprof1 requires -lpdf for OSF 4. |
| * alpha/osf2or3.h: New file. |
| |
| Tue Mar 18 11:32:10 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * m68k.c (m68k_last_compare_had_fp_operands): New variable. |
| * m68k.h (m68k_last_compare_had_fp_operands): Declare it. |
| * m68k.md (tst*, cmp*): Turn into define_expand/define_insn pairs. |
| Keep track of whether test/compare has fp operands. |
| (seq, sne, sgt, slt, sge, sle): Turn into define_expand/define_insn |
| pairs. Make expanders FAIL if TARGET_68060 and last comparison/test |
| had fp operands. |
| |
| Tue Mar 18 04:29:29 1997 Richard Earnshaw <rearnsha@armltd.co.uk> |
| |
| * arm.md (movhi): Handle generation of large constants during |
| and after reload. |
| |
| Mon Mar 17 17:30:24 1997 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * gmicro.h (RETURN_POPS_ARGS): Make sure FUNDECL is non-nil |
| before we try to use it. |
| * m68k.h (RETURN_POPS_ARGS): Likewise. |
| * ns32k.h (RETURN_POPS_ARGS): Likewise. |
| * pyr.h (RETURN_POPS_ARGS): Likewise. |
| |
| Mon Mar 17 17:13:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * stor-layout.c (layout_record, PCC_BITFIELD_TYPE_MATTERS): |
| Only add padding if a bit field would otherwise span more units |
| of alignment than its base type. |
| |
| Mon Mar 17 17:03:55 1997 J.T. Conklin <jtc@cygnus.com> |
| |
| * m68k.md (beq0_di, bne0_di, bge0_di, blt0_di): Use cmpw #0 |
| instead of tstl when testing address registers on the 68000. |
| |
| * m68k/lb1sf68.asm: Fix prologues/epilogues to deal with the lack |
| of predecrement/postincrement addressing modes in the coldfire |
| moveml instruction. |
| |
| Mon Mar 17 17:00:14 1997 Scott Christley <scottc@net-community.com> |
| |
| * Fix long standing bug where first method call for a class could |
| result in a garbled stack or produce an incorrect return value. |
| * objc/sendmsg.c (__objc_block_return): Remove function. |
| (__objc_word_return, __objc_double_return): Remove functions. |
| (__objc_get_forward_imp): New function. |
| (__objc_init_dispatch_tables): Install zero instead of |
| __objc_init_install_dtable. |
| (__objc_init_install_dtable): No longer call the method but |
| allow objc_msg_lookup return it for normal execution. |
| (obj_msg_lookup): Differentiate between when a method isn't |
| implemented and when the dispatch table needs to be installed. |
| Return the IMP when the dispatch table is installed versus |
| having __objc_init_install_dtable call it. |
| (get_imp): Install dispatch table if needed and return IMP |
| from the newly installed dispatch table. |
| (__objc_responds_to): Install dispatch table if needed before |
| checking if method is implemented. |
| |
| Mon Mar 17 16:29:38 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * tree.c (build_{index,range}_type): Ensure expressions for min |
| and max value are in same obstack as type. |
| |
| Mon Mar 17 15:44:18 1997 Pat Rankin <rankin@eql.caltech.edu> |
| |
| * cccp.c [#if VMS] (O_RDONLY, O_WRONLY): Delete (redundant). |
| (BSTRING): Delete (obsolete; usage occurs prior to definition). |
| (do_include): Handle old VAX C style includes better. |
| |
| Mon Mar 17 13:46:47 1997 Paul Eggert <eggert@twinsun.com> |
| |
| * cexp.y, cppexp.c (parse_number): Invalid integer constants are |
| errors if pedantic. |
| * cexp.y (yylex): Invalid multibyte characters are errors if pedantic. |
| * cppexp.c (cpp_lex): Likewise. |
| * cppexp.c (cpp_parse_escape): Character constants that do not fit are |
| errors if pedantic. |
| |
| * c-parse.in (expr_no_commas): Do not store temporary |
| skip_evaluation increments on yacc value stack. |
| |
| Sun Mar 16 19:54:49 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * expr.c (expand_expr, case PLACEHOLDER_EXPR): Refine which |
| object is picked. |
| |
| Sun Mar 16 15:45:45 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * loop.c (strength_reduce): Adjust BENEFIT appropriately if an |
| autoincrement memory reference will eliminate add insns. |
| |
| Sun Mar 16 08:41:40 1997 Scott Christley <scottc@net-community.com> |
| |
| * i386.md (untyped_call): Re-enable code. |
| * objc/sendmsg.c (__objc_block_return): New function. |
| (__objc_word_return, __objc_double_return): New functions. |
| (__objc_init_install_dtable): Call appropriate return function |
| based upon method type. |
| * objc/thr-pthreads.c: Correct include path. |
| |
| Sat Mar 15 07:58:33 1997 Scott Christley <scottc@net-community.com> |
| |
| * objc-act.c (OBJC_VERSION): Increment version. |
| * objc/init.c (OBJC_VERSION): Likewise. |
| |
| Sat Mar 15 07:58:00 1997 Ovidiu Predescu <ovidiu@net-community.com> |
| |
| * Implement +load. |
| * objc/init.c (objc_send_load, __objc_send_load): New functions. |
| (__objc_send_message_in_list): New function. |
| (__objc_force_linking): New function. |
| (__objc_exec_class): Don't call _objc_load_callback here. |
| * objc/linking.m: New file. |
| * objc/sendmsg.c (class_add_method_list): Check for the +load method |
| when adding a methods list to a class. |
| * objc/Makefile (OBJC_O): Add linking.m. |
| |
| * Allow methods defined in categories to override methods that are |
| defined in the class implementation. |
| * objc/sendmsg.c (__objc_install_methods_in_dtable): New function. |
| (class_add_method_list): Don't check anymore for duplicate methods. |
| |
| * config/nextstep.h (INCLUDE_DEFAULTS): Define to something useful |
| when cross-compiling. |
| |
| * The static instances list moved from the objc_module struct to |
| objc_symtab struct, at the end of defs array. This now allows the NeXT |
| gdb to work with binaries generated for the GNU ObjC runtime. |
| * objc-act.c (build_objc_symtab_template): Make sure |
| defs in objc_symtab is a NULL terminated array. |
| (init_def_list): Attach statics to end of def list. |
| (init_objc_symtab): Take statics list into account. |
| (init_module_descriptor, build_module_descriptor): Don't add statics. |
| (generate_static_references): Indicate that statics are used. |
| (finish_objc): Process statics in the beginning. |
| * objc/objc-api.h (objc_module): Eliminate statics variable. |
| * objc/init.c (__objc_exec_class): Access statics from their |
| new place in the defs variable. |
| |
| Sat Mar 15 07:29:15 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * reload.c: Include expr.h. |
| (find_reloads_address, find_reloads_address_1): New argument INSN. |
| (find_reloads_address_1): Reload inside of p{re,ost}_{in,de}c |
| instead of entire p{re,ost}_{in,de}c where appropriate. |
| * Makefile.in (reload.o): Added expr.h to dependencies list. |
| |
| Sat Mar 15 07:17:12 1997 Richard Henderson <rth@tamu.edu> |
| |
| * reload.h (eliminate_regs): Add STORING arg. |
| * reload1.c (eliminate_regs): Likewise. |
| (eliminate_regs, case SET): Pass that we are storing to recursive call. |
| (eliminate_regs, case SUBREG): If storing and same number of words, |
| use larger mode. |
| * caller-save.c, dbxout.c, dwarfout.c, dwarf2out.c, reload.c, sdbout.c: |
| Change all calls to eliminate_regs. |
| |
| Fri Mar 14 14:18:49 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * cplus-dem.c: Add prototypes for all static functions. |
| (mystrstr): Make static. Make arguments and result const. |
| (cplus_match): Remove; not used. |
| |
| Fri Mar 14 10:15:35 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.c (const_costs): Remove unused function. |
| * mn10300.h (CONST_COSTS): Rework to generate better code. |
| |
| * mn10300.c (print_operand): Handle 'H' and 'L' output |
| modifers for high/low part of a 64bit value. |
| * mn10300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Handle 'G' |
| (LEGITIMATE_CONSTANT_P): Allow any constant. |
| * mn10300.md (movdi, movdf): Implement. |
| (adddi3, subdi3): New expanders and patterns. |
| |
| * mn10300.c (print_operand): Handle 'A' modifier for an |
| address which can't be simple register indirect. |
| * mn10300.h (EXTRA_CONSTRAINT): Handle 'R' for bit ops. |
| * mn10300.md: Add patterns to test, set and clear bitfields. |
| |
| * mn10300.c (can_use_return_insn): New function. |
| (expand_epilogue): Emit a RETURN insn if possible. |
| * mn10300.md (return): New pattern. |
| |
| * mn10300.h (CONST_OK_FOR_LETTER_P): Handle 'N'. |
| * mn10300.md (andsi3): Catch "and 255,dn" and "and 65535,dn" |
| which were not turned into zero_extend patterns. |
| |
| * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Handle symbolic |
| constant as an index/base too. |
| |
| * mn10300.md (movsi): Allow SP to be loaded/saved with |
| reg+d8 addresses. |
| |
| * mn10300.md (cmpsi): Allow second operand to be a constant. |
| (subsi3): Likewise. |
| |
| * mn10300.md (sign extension patterns): Fix thinko when |
| extending from memory. |
| |
| * mn10300.md (tst peepholes): Add peepholes for test/branch |
| based on N bit being set/clear and the data value being tested dies. |
| |
| Tue Mar 11 17:07:51 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.c (expand_prologue): Rework so that eliminating |
| the frame pointer produces faster/smaller code. |
| (expand_epilogue): Likewise. |
| (initial_offset): New function for argument pointer and frame pointer |
| elimination. |
| * mn10300.h (FIRST_PSEUDO_REGISTER): Bump to 10. |
| (FIXED_REGISTERS): Add argument pointer register, it's a fake fixed |
| register. |
| (CALL_USED_REGISTERS, REG_ALLOC_ORDER): Corresponding changes. |
| (REGNO_REG_CLASS, REG_CLASS_CONTENTS): Likewise. |
| (REG_OK_FOR_BASE_P, REGISTER_NAMES): Likewise. |
| (reg_class, REG_CLASS_NAMES): Delete unwanted DATA_OR_SP_REGS class. |
| (PREFERRED_OUTPUT_RELOAD_CLASS): Define. |
| (FIRST_PARM_OFFSET): No longer include register save area in |
| computation. |
| (STACK_POINTER_REGNUM): Is now register 9. |
| (ARG_POINTER_REGNUM): Is now register 8. |
| (FRAME_POINTER_REQUIRED): Refine. |
| (ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET): Define. |
| (CAN_DEUG_WITHOUT_FP): Define. |
| * mn10300.md (return_internal): Break into two patterns. |
| |
| * mn10300.h (CONST_OK_FOR_LETTER_P): Handle 'M' too. |
| (REGISTER_MOVE_COST): Fix errors and refine. |
| |
| * mn10300.c (notice_update_cc): SET_ZN_C0 insns leave the |
| overflow bit in an unuseable state. Rename CC_SET to CC_TST. |
| * mn10300.md (cc attributes): "set" is gone, replaced by |
| "tst". Update attributes on various insns. |
| |
| * mn10300.md: Improve sign and zero extension instructions. |
| (ashlsi3): Improve. Handle address registers too. |
| (add peephole): Combine two consecutive adjustments of a register |
| into a single adjustment. |
| |
| Tue Mar 11 17:18:40 1997 Brendan Kehoe <brendan@melange.gnu.ai.mit.edu> |
| |
| * cplus-dem.c (gnu_special): Call demangled_fund_type for other |
| __t* symbols. |
| |
| Mon Mar 10 16:10:34 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * emit-rtl.c (subreg_lowpart_p): Return 0 if SUBREG_REG is VOIDmode. |
| * combine.c (simplify_rtx, case SUBREG): Fix direction of test when |
| calling operand_subword; use inline code intead of subreg_lowpart_p. |
| |
| Fri Mar 7 09:22:28 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.c (expand_{pro,epi}logue): Rework to avoid |
| unnecessary "add" operations. |
| (expand_epilogue): Likewise. |
| * mn10300.h (STARTING_FRAME_OFFSET): Is zero after the last |
| round of prologue/epilogue changes. |
| (FIRST_PARM_OFFSET): Is now 16 (-4 for REG_PARM_STACK_SPACE + 20 for |
| register save area). |
| (REG_PARM_STACK_SPACE): Define as 4 bytes. |
| (OUTGOING_REG_PARM_STACK_SPACE): Define so caller allocates it. |
| * mn10300.md (call{,_value} expander): Don't emit insns to adjust the |
| stack here anymore. |
| |
| * mn10300.md (bCC patterns): Just use "bCC target". |
| |
| Tue Mar 4 13:21:41 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * rs6000.md (movsi): Don't emit a USE insn for LABEL_REFs. |
| |
| Thu Mar 6 16:29:13 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * dwarf2out.c (modified_type_die): Initialize item_type to NULL. |
| Move equate_type_number_to_die call before use of sub_die, and move |
| recursive modified_type_die calls on item_type after it. |
| |
| * dwarfout.c (root_type_1, write_modifier_bytes_1): New functions. |
| (root_type): Call root_type_1. |
| (write_modifier_bytes): Call write_modifier_bytes_1. |
| (output_type, case POINTER_TYPE): Set TREE_ASM_WRITTEN before |
| recursive call. |
| |
| Wed Mar 5 14:30:49 1997 Torbjorn Granlund <tege@quiet.matematik.su.se> |
| |
| Partially undo Jan 11 changes (nor takes only register ops): |
| * mips.md (*norsi3_const, *nordi3_const): Delete bogus patterns. |
| * mips.c (complemented_arith_operand): Delete function. |
| (print_operand): Don't handle `e' for CONST_INT. |
| * mips.h (PREDICATE_CODES): Delete complemented_arith_operand. |
| |
| Tue Mar 4 16:38:13 1997 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * i386.c (i386_return_pops_args): Make sure FUNDECL is non-nil |
| before we try to use it. |
| * i386/isc.h (RETURN_POPS_ARGS): Likewise. |
| * i386/next.h (RETURN_POPS_ARGS): Likewise. |
| * i386/sco.h (RETURN_POPS_ARGS): Likewise. |
| * i386/sco5.h (RETURN_POPS_ARGS): Likewise. |
| * i386/scodbx.h (RETURN_POPS_ARGS): Likewise. |
| |
| Mon Mar 3 20:17:54 1997 Gavin Koch <gavin@cygnus.com> |
| |
| * ginclude/va-mips.h: __mips_single_float should have |
| the same effect on vararg lists as __mips_soft_float. |
| |
| Mon Mar 3 18:12:01 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000.h (DBX_CONTIN_LENGTH): Undo 2/26 change. |
| |
| Mon Mar 3 13:08:20 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * combine.c (simplify_rtx): Do nothing with (truncate:mode) if |
| mode is a partial integer mode. |
| |
| Sun Mar 2 17:41:18 1997 Ulrich Drepper <drepper@cygnus.com> |
| |
| * ginclude/varargs.h: Add definition of __va_copy. |
| * va-alpha.h, va-clipper.h, va-h8300.h, va-i860.h: Likewise. |
| * va-i960.h, va-m88k.h, va-mips.h, va-pa.h, va-ppc.h: Likewise. |
| * va-sh.h, va-sparc.h, va-spur.h: Likewise. |
| |
| Sun Mar 2 13:25:49 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * c-typeck.c (process_init_element): Warn and truncate if upper |
| bound of index is out of range. |
| |
| Fri Feb 28 16:08:47 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000/sol-c0.c (_start): Disable loading up r13 and r2 with the |
| SDA base registers for now. |
| |
| * rs6000.md (movsi): Emit a USE insn when putting the |
| label of constants into the TOC, so that the constant is still |
| emitted when expensive optimizations are used. |
| |
| Thu Feb 27 17:54:42 1997 Karl Heuer <kwzh@gnu.ai.mit.edu> |
| |
| * fixinc.ptx: Fix sed expression looking for <sys/types.h> in |
| pwd.h. |
| |
| Thu Feb 27 12:11:16 1997 Dennis Glatting <dennis.glatting@plaintalk.bellevue.wa.us> |
| |
| * fixincludes: Remove more cases of __const__ from math.h on |
| NeXT. |
| |
| Wed Feb 26 14:52:27 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * reload.c (debug_reload): Remove extra argument to fprintf. |
| |
| * rs6000.c (output_toc): Make fprintf calls type correct. |
| |
| * rs6000.h (DBX_CONTIN_LENGTH): Define as 4000 to avoid AIX |
| assembler line limit. |
| |
| Mon Feb 24 17:56:17 1997 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * fixincludes: Fix need of prototypes for C++ in rpc/xdr.h on SunOS4. |
| |
| Mon Feb 24 17:33:57 1997 Michael Meissner <meissner@cygnus.com> |
| |
| * rs6000/xm-sysv4.h (HAVE_STRERROR): Define. |
| |
| Sun Feb 23 17:18:28 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * rs6000.md (floatsidf2_loadaddr): Correct syntax for cau instruction. |
| (load_multiple, store_multiple): Call change_address instead of |
| creating MEM from scratch. |
| |
| Thu Feb 20 16:39:15 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * unroll.c (unroll_loop): Add check for naive loop that ends with |
| conditional branch that does not branch back to loop start. |
| |
| * reload1.c (reload): Move assign_stack_local call into main loop. |
| |
| Thu Feb 20 11:40:46 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.md (zero extension patterns): Turn into define_expand and |
| define_insn pair. |
| |
| Wed Feb 19 17:05:38 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.c (emit_move_sequence): Don't copy 0.0 (double precision) |
| directly to memory, go through a reg if reload hasn't started. |
| * pa.md (main movdf pattern): Don't allow 0.0 (double precision) |
| to be copied directly to memory. |
| |
| * pa/pa-hpux10.h (MD_EXEC_PREFIX): Define appropriately for hpux10. |
| (MD_STARTFILE_PREFIX): Similarly. |
| |
| * pa.h (ASM_OUTPUT_SECTION_NAME): Surround the section name |
| with '$' if not using GAS. |
| |
| Wed Feb 19 16:43:47 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * sched.c (schedule_insns): If there was no first scheduling pass, |
| split instructions after reload. |
| (update_flow_info): Tolerate some idiosyncrasies after reload. |
| |
| Wed Feb 19 11:13:51 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * combine.c (find_split_point): Don't turn a SIGN_EXTEND into |
| a series of shifts if either mode is a partial integer mode. |
| |
| Mon Feb 17 08:06:02 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * rs6000.c ({,non_}short_cint_operand): Use (unsigned HOST_WIDE_INT). |
| (non_add_cint_operand, includes_rshift_p): Likewise. |
| * rs6000.h (CONST_OK_FOR_LETTER_P): Likewise. |
| (LEGITIMATE_ADDRESS_INTEGER_P, LEGITIMIZE_ADDRESS): Likewise. |
| |
| Sun Feb 16 07:55:19 1997 J"orn Rennecke (amylaar@cygnus.co.uk) |
| |
| * libgcc2.c (__negdi2, __lshrdi3, __ashldi3, __ashrdi3, __ffsdi2): |
| Use ANSI style definition with full prototype. |
| (__muldi3, __udiv_w_sdiv, __udivmoddi4, __divdi3, __moddi3) : Likewise. |
| (__udivmoddi4, __udivdi3, __cmpdi2, __ucmpdi2) : Likewise. |
| (__fixunstfdi, __fixtfdi, __fixunsxfdi, __fixxfdi) : Likewise. |
| (__fixunsdfdi, __fixdfdi, __floatdixf, __floatditf) : Likewise. |
| (__floatdidf, __floatdisf, __fixunsxfsi, __fixunsdfsi) : Likewise. |
| (__gcc_bcmp, __eprintf, gopen, gclose, __bb_init_file) : Likewise. |
| (__bb_init_trace_func, __clear_cache, mprotect) : Likewise. |
| (__enable_execute_stack, cacheflush, exit) : Likewise. |
| (find_exception_table, __find_first_exception_table_match) : Likewise. |
| |
| Sun Feb 16 07:52:02 1997 Oliver Kellogg (oliver.kellogg@space.otn.dasa.de) |
| |
| * 1750a.md (mulqihi3): Corrected. |
| (tst{hf,tqf}): Simplified. |
| (movqi): Removed redundant alternative. |
| (addqi-3,addqi-2,addqi-1): Set/Reset Bit patterns by C. Nettleton. |
| (many patterns): Introduced operand output modifiers d,t,b,B,w. |
| * 1750a.c (print_operand): New operand output modifiers d,t,b,B,w. |
| (simple_memory_operand): Removed. |
| (one_bit_set_p, which_bit): Added from C. Nettleton's m1750 config. |
| |
| Sun Feb 16 07:43:37 1997 Paul Eggert <eggert@twinsun.com> |
| |
| * cccp.c (special_symbol): Don't treat "L" in "L'...'" as identifier. |
| (check_macro_name, collect_expansion, rescan): Likewise. |
| * cpplib.c (special_symbol, check_macro_name, collect_expansion): |
| Likewise. |
| |
| * cexp.y (parse_c_expression): Don't check for null lexptr |
| or *lexptr == 0. If yyparse returns nonzero value, abort. |
| |
| * cexp.y (yylex): Use is_space, not is_hor_space, to find keyword end. |
| (is_space): New decl. |
| (is_hor_space): Removed. |
| * cccp.c (is_space): Now external. |
| (is_hor_space): Now static. |
| |
| Sun Feb 16 04:55:11 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * toplev.c, tree.h (decl_printable_name): Change arguments. |
| * c-common.c (declare_function_name): Reflect above change. |
| * final.c (final_start_function): Likewise. |
| * function.c (init_function_start): Likewise. |
| * toplev.c (decl_name): Likewise. |
| (announce_function): Likewise. |
| (v_message_with_decl): Likewise. |
| * dwarf2out.c (dwarf2_name): New fn, uses decl_printable_name. |
| (add_pubname): Use it. |
| (add_name_and_src_coords_attributes): Use it, add |
| DW_AT_MIPS_linkage_name if appropriate. |
| (output_aranges): Use DW_AT_MIPS_linkage_name if present. |
| |
| Sat Feb 15 18:45:30 1997 J.T. Conklin <jtc@cygnus.com> |
| |
| * m68k.md (cmpsi): Added insn with appropriate constraints for |
| TARGET_5200; changed condition of existing insn to !TARGET_5200. |
| |
| Sat Feb 15 18:26:50 1997 Philippe De Muyter <phdm@info.ucl.ac.be> |
| |
| * m68k/hp320.h (PRINT_OPERAND_FLOAT): Removed. |
| (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}_OPERAND): Defined. |
| (PRINT_OPERAND): Turned off: use default. |
| * m68k/news.h (PRINT_OPERAND): Turned off: use default. |
| (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}_OPERAND): Defined. |
| * m68k/tower-as.h (PRINT_OPERAND): Turned off: use default. |
| (ASM_OUTPUT_{FLOAT,DOUBLE}_OPERAND): Defined. |
| * m68k/crds.h (PRINT_OPERAND): Turned off: use default. |
| (ASM_OUTPUT_{FLOAT,DOUBLE}_OPERAND): Defined. |
| (SGS_NO_LI,STRUCTURE_SIZE_BOUNDARY,IMMEDIATE_PREFIX): Defined. |
| (NEED_PROBE): Defined instead of HAVE_probe and gen_probe. |
| (FUNCTION_{PRO,EPI}LOGUE): Do not access FPA registers. |
| * m68k.c (output_function_prologue): Add CRDS and MOTOROLA probe code. |
| (print_operand): Do not output '.' if CRDS. |
| |
| * gcc.c (set_spec): Fix comment-in-comment typo. |
| |
| Sat Feb 15 17:54:23 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
| |
| * Makefile.in (COMPILERS): Moved before GCC_PASSES. |
| (GCC_PASSES): Use $(COMPILERS) instead of cc1$(exeext). |
| |
| Sat Feb 15 17:25:44 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * gcc.c (process_command): Allocate space for terminating null. |
| |
| Sat Feb 15 17:21:34 1997 Pat Rankin <rankin@eql.caltech.edu> |
| |
| * vax/vax.h (FUNCTION_PROLOGUE): Adjust size by STARTING_FRAME_OFFSET. |
| * vax/vms.h (FUNCTION_PROLOGUE): Delete. |
| |
| Sat Feb 15 08:48:14 1997 Douglas B. Rupp (rupp@gnat.com) |
| |
| * configure: Fix setting of CC in no-symlink case. |
| |
| Sat Feb 15 08:42:17 1997 Oliver Kellogg (oliver.kellogg@space.otn.dasa.de) |
| |
| * expmed.c (expand_divmod): Prefer divmod in same mode over div |
| in wider mode. |
| |
| Sat Feb 15 08:27:50 1997 J"orn Rennecke (amylaar@cygnus.co.uk) |
| |
| * fold-const.c (fold): Don't assume a nonexplicit constant cannot |
| equal an explicit one. |
| |
| * i386.md (zero_extendqi[hs]i2+3): Ensure operating on REG. |
| |
| Sat Feb 15 08:11:04 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * configure (i[3456]86-*-solaris2*): Correct tm.h filename in |
| stabs case. |
| |
| * a29k.h (STORE_FLAG_VALUE): Write so works on both 32 and 64-bit host. |
| |
| Fri Feb 14 16:03:37 1997 Robert Lipe <robertl@dgii.com> |
| |
| * i386/t-sco5 (libgcc{1,2}-elf.a): correct target dependencies. |
| |
| Fri Feb 14 16:00:23 1997 H.J. Lu <hjl@gnu.ai.mit.edu> |
| |
| * config/svr4.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Set |
| current-section variable to text. |
| |
| Wed Feb 12 16:07:34 1997 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * fixinc.irix: New file. |
| * configure (mips-sgi-irix[56]): Set fixincludes to fixinc.irix. |
| |
| Wed Feb 12 15:40:20 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * Makefile.in (LIBGCC2_DEBUG_CFLAGS): New macro. |
| (LIBGCC2_CFLAGS): Use it. |
| |
| * dwarfout.c (output_type): Do early exit only if TYPE_CONTEXT is NULL |
| or if TYPE_CONTEXT is another type (e.g. a nested type). |
| |
| Tue Feb 11 15:53:51 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * sh.c (calc_live_regs): Exclude RETURN_ADDRESS_POINTER_REGNUM. |
| |
| * sh.c (calc_live_regs): Need not save MACL/MACH when not live |
| or in leaf function. |
| |
| Mon Feb 10 14:46:32 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * stmt.c (group_case_nodes): Recognize more opportunities to |
| group case nodes. |
| |
| Sun Feb 9 14:05:48 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * function.c (assign_stack_temp): Clear MEM flags from reuse. |
| |
| Sat Feb 8 17:37:47 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * local-alloc.c (update_equiv_regs): Fix error in last change. |
| |
| Fri Feb 7 12:42:34 1997 Mike Stump <mrs@cygnus.com> |
| |
| * pa.h (RETURN_ADDR_RTX): Fix to ignore export stubs. |
| * pa.c (return_addr_rtx): Define. |
| |
| Fri Feb 7 13:56:56 1997 Doug Evans <dje@cygnus.com> |
| |
| * cse.c (invalidate_from_clobbers): Delete unnecessary test for |
| (clobber nil). |
| |
| * toplev.c (main): Delete redundant settings of flag_no_inline |
| and warn_inline if not optimizating. |
| |
| Fri Feb 7 10:45:02 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * Makefile.in (stmp-multilib-sub): Add missing "else true" |
| clauses to work around make bug on some systems. |
| |
| Fri Feb 7 08:19:43 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * fold-const.c (const_binop): Don't call size_int if low < 0. |
| |
| * function.c (instantiate_virtual_regs_1, case USE, CLOBBER): |
| Fix error in last change. |
| |
| Thu Feb 6 17:09:17 1997 Mike Stump <mrs@cygnus.com> |
| |
| * except.c (find_exception_handler_labels): Initialize label array |
| with zeroes. |
| |
| Wed Feb 5 22:11:55 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.md (post_ldwm): Fix typos. |
| |
| Wed Feb 5 15:57:42 1997 Doug Evans <dje@cygnus.com> |
| |
| * m68k/vxm68k.h (WCHAR_TYPE,WCHAR_TYPE_SIZE,SIZE_TYPE): Fix. |
| (PTRDIFF_TYPE): Define. |
| |
| Wed Feb 5 11:19:13 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload1.c (alter_reg): Don't ask assign_stack_local to round up |
| to a multiple of BIGGEST_ALIGNMENT, unless a register appears in a |
| paradoxical subreg. |
| |
| Tue Feb 4 19:29:40 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * reload.c (find_reloads_address_1, case POST_INC): Don't use |
| ADDR_TYPE here. |
| |
| Tue Feb 4 12:33:45 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * flow.c (life_analysis): Delete obvious no-op moves |
| which use SUBREGs. |
| |
| Mon Feb 3 20:00:35 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * jump.c (find_cross_jump): Don't allow old-style and volatile asms |
| to match. |
| |
| Mon Feb 3 15:51:31 1997 Doug Evans <dje@cygnus.com> |
| |
| * sparc/sol2.h (ASM_SHORT,ASM_LONG): Set to .uahalf/.uaword. |
| * sparc/sysv4.h (ASM_LONG): Define. |
| (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Use ASM_LONG. |
| |
| Mon Feb 3 13:01:46 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload.h (enum reload_type): Add RELOAD_FOR_INPADDR_ADDRESS and |
| RELOAD_FOR_OUTADDR_ADDRESS. |
| * reload.c (ADDR_TYPE): New macro. |
| (push_secondary_reload): Check for new reload types. |
| (combine_reloads): Likewise. |
| (find_reloads): Likewise. Convert INPADDR_ADDRESS and |
| OUTADDR_ADDRESS to OPADDR_ADDR. Check OPADDR_ADDR when looking |
| for merges. |
| (find_reloads_address): When reloading an address, use the |
| ADDR_TYPE macro to get the type of the new reload. |
| (find_reloads_address_1): Likewise. |
| (reload_when_needed_name): Add new reload types. |
| * reload1.c (reload): Add in_addr_addr and out_addr_addr fields to |
| insn_needs struct. Use them for new reload types, and when |
| computing in_max and out_max. |
| (reg_used_in_inpaddr_addr): New static array. |
| (reg_used_in_outaddr_addr): New static array. |
| (mark_reload_reg_in_use): Handle new reload types. |
| (clear_reload_reg_in_use, reload_reg_free_p): Likewise. |
| (reload_reg_free_before_p, reload_reg_reaches_end_p): Likewise. |
| (reloads_conflict, merge_assigned_reloads): Likewise. |
| (emit_reload_insns): Likewise. |
| (choose_reload_regs): Save arrays for new reload types. |
| |
| Sun Feb 2 19:43:17 1997 Scott Christley <scottc@net-community.com> |
| |
| * objc/selector.c (__sel_register_typed_name): Eliminate compiler |
| warnings with explicit cast. |
| |
| * Add condition mutex support to the objc runtime. |
| * objc/thr-mach.c (objc_condition_{,de}allocate): New functions. |
| (objc_condition_{wait,broadcast,signal}): New functions. |
| * objc/thr-pthreads.c (objc_condition_{,de}allocate): New functions. |
| (objc_condition_{wait,broadcast,signal}): New functions. |
| * objc/thr-solaris.c (objc_condition_{,de}allocate): New functions. |
| (objc_condition_{wait,broadcast,signal}): New functions. |
| * objc/thr.h: Prototypes for new functions. |
| |
| * objc/init.c (__objc_runtime_mutex): Eliminate leading underscore |
| from name of objc mutex and thread structures. |
| * objc/runtime.h: Likewise. |
| * objc/thr-{decosf1,irix,mach,os2,posix,pthreads,single}.c: Likewise. |
| * objc/thr-{solaris,win32}.c: Likewise. |
| * objc/thr.{c,h}: Likewise. |
| |
| * Major reorganization of objc error handling. |
| * objc/Object.m (-error:): Call objc_error function instead of |
| using function pointer. |
| * objc/archive.c: Replace call to abort or __objc_fatal functions |
| with call to objc_error function throughout the complete file. |
| * objc/class.c (objc_get_class): Replace call to abort function |
| with call to objc_error function. |
| * objc/encoding.c (objc_sizeof_type, objc_alignof_type): Replace |
| call to abort function with call to objc_error function. |
| (objc_skip_typespec): Likewise. |
| * objc/init.c (init_check_module_version): Replace call to |
| abort function with call to objc_error function. |
| * objc/misc.c (objc_verror): New function. |
| (objc_fatal): Remove function. |
| (objc_set_error_handler): New function. |
| (_objc_error_handler): New global variable. |
| (__alpha__): Remove unneeded code. |
| (objc_error): Allow user specified error handler function to |
| trap and handle the objc error. Added an error code parameter |
| which indicates the specific error that occured. |
| (objc_malloc, objc_atomic_malloc): Replace call to objc_fatal |
| function with call to objc_error function. |
| (objc_valloc, objc_realloc, objc_calloc): Likewise. |
| * objc/objc-api.h: Declare error handling functions and typedef |
| for user specified error handler function. Define error codes |
| used by the runtime library. |
| * objc/runtime.h: Remove error handling declarations. |
| * objc/sendmsg.c (__objc_forward): Replace call to abort function |
| with call to objc_error function. |
| |
| Sun Feb 2 19:42:52 1997 Thomas Baier <baier@ci.tuwien.ac.at> |
| |
| * objc/hash.c (hash_delete): Step through the hash nodes |
| versus using hash_next to increase efficiency. |
| * objc/archive.c (__objc_finish_read_root_object): Use hash |
| table instead of list. |
| |
| Sun Feb 2 08:25:05 1997 Ovidiu Predescu <ovidiu@net-community.com> |
| |
| * objc-act.c (encode_aggregate_within): New function. |
| (encode_aggregate): Generates encodings for unions similar |
| to those for structs except surrounded by parenthesis instead |
| of braces. |
| |
| Sun Feb 2 07:15:54 1997 Mat Hostetter (mat@lcs.mit.edu) |
| |
| * c-decl.c (start_function): Fix improper installation of last change. |
| |
| Sun Feb 2 06:50:55 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * m68k.c (output_scc_di): Add missing CC_STATUS_INIT. |
| |
| Sun Feb 2 06:39:55 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * c-typeck.c (process_init_element): When popping levels, don't |
| blow up if constructor_max_index not set due to previous error. |
| |
| * combine.c (find_split_point, case SET): Fix error in last change. |
| |
| Sun Feb 2 06:28:56 1997 Paul Eggert <eggert@twinsun.com> |
| |
| * cccp.c (rescan): Insert a space after `.' as well, |
| to prevent accidental token-pasting (e.g. `.x' -> `.10'). |
| |
| Sun Feb 2 06:08:14 1997 Oliver Kellogg (oliver.kellogg@space.otn.dasa.de) |
| |
| * 1750a.c (modregno_adjust): Fixed case when reg_renumber invalid. |
| |
| Sat Feb 1 19:11:08 1997 J.T. Conklin <jtc@rhino.cygnus.com> |
| |
| * m68k.md (movqi): Enable use of clr and st insns on TARGET_5200. |
| * m68k.c (output_move_simode_const): Likewise. |
| |
| Sat Feb 1 18:54:00 1997 Douglas B. Rupp (rupp@gnat.com) |
| |
| * gcc.c (process_command): Fix improper use of strncpy. |
| |
| Fri Jan 31 15:35:08 1997 Mike Stump <mrs@cygnus.com> |
| |
| * libgcc2.c: Remove extern for malloc and realloc. |
| |
| Fri Jan 31 17:08:11 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * local-alloc.c (update_equiv_regs): If a register which is |
| equivalent to some value is only used in one place, and we can't |
| substitute the value for the use, then move the register assignment |
| to just before the use. |
| |
| Fri Jan 31 15:57:25 1997 Stan Cox <coxs@dg-rtp.dg.com> |
| |
| * i386.md (idiv,imul,fpmul): Added new functional units for pentiumpro. |
| |
| * i386.c (pentiumpro_cost): Added new cost structure for pentiumpro. |
| (override_options): Set ix86_cost to appropriate cost structure. |
| |
| Thu Jan 30 09:34:26 1997 J.T. Conklin <jtc@rhino.cygnus.com> |
| |
| * m68k.md (stack adjust peepholes): Use lea instead of |
| add.w when adding 16 bit constants on all but TARGET_68040. |
| |
| Thu Jan 30 08:58:08 1997 Ralf Baechle <ralf@waldorf-gmbh.de> |
| |
| * function.c (TRAMPOLINE_ALIGNMENT): Provide default. |
| (expand_function_end): Use TRAMPOLINE_ALIGNMENT instead |
| of FUNCTION_BOUNDARY. |
| * varasm.c (TRAMPOLINE_ALIGNMENT): Provide default. |
| (assemble_trampoline_template): Use TRAMPOLINE_ALIGNMENT instead |
| of FUNCTION_BOUNDARY. |
| |
| Wed Jan 29 18:16:02 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * sh.h (REG_CLASS_CONTENTS): Add rap to GENERAL_REGS and its |
| superclasses. |
| |
| * sh.md (movsi_i, movsi_ie, movhi_i, movhi+1): Use type pcload for |
| immediate operands where appropriate. |
| (movsf_ie+1): Fail when loading anything but a MEM into |
| a floating point reguister. |
| |
| Wed Jan 29 16:00:31 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * varasm.c (force_const_mem): Set MARK instead of clearing it. |
| (output_constant_pool): Only mark constant pool if -O. |
| Check mark flag unconditionally. |
| (mark_constant_pool): Start by clearing all mark flags. |
| |
| * tree.c (copy_node): Clear TREE_ASM_WRITTEN. |
| |
| * flow.c (regno_uninitialized): Return 0 if reg is used for args. |
| |
| Wed Jan 29 15:23:59 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * combine.c (try_combine): Clear reg_n_refs if i2dest is not |
| mentioned in newi2pat. |
| |
| Tue Jan 28 16:00:23 1997 Stan Cox (coxs@dg-rtp.dg.com) |
| |
| From Robert Lipe <robertl@dgii.com> |
| * i386/sco5.h (SCO_DEFAULT_ASM_COFF): Remove bytecode stuff. |
| (ASM_OUTPUT_ASCII): Use .ascii in both ELF and COFF modes. |
| (ASM_OUTPUT_SECTION_NAME): Handle alternate sections for COFF. |
| The OpenServer 5.0.0 assembler gives an error for section |
| names over 6 characters long, so we catch the "obvious" case |
| and shorten it. |
| |
| * m88k.h (ASM_OUTPUT_SECTION_NAME): Undefine; fails |
| for exception sections. The 88k ABI specifies 'section' |
| instead of '.section'. |
| |
| Mon Jan 27 13:32:46 1997 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * sh.c (shl_and_kind): Fix typo. |
| * sh.md (and_shl_scratch): Fix typo for length 8. |
| |
| Mon Jan 27 08:56:03 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * fixincludes: Fix incorrect forward structure declaration in |
| sys/time.h on hpux10.20. |
| |
| Mon Jan 27 09:05:35 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * combine.c (simplify_rtx): Don't do anything with if_then_else_cond |
| result if both one arm and the input are a comparison. |
| (simplify_{rtx,if_then_else,logical,shift_const}): Don't |
| test STORE_FLAG_VALUE with #if; properly test for just sign bit. |
| (num_sign_bit_copies, if_then_else_cond): Likewise. |
| * expmed.c (emit_store_flag): Properly test for STORE_FLAG_VALUE |
| of just sign bit. |
| * fold-const.c (fold): Don't make COND_EXPR when both expr and |
| one part are comparisons. |
| * a29k.h (STORE_FLAG_VALUE): Make negative. |
| |
| Fri Jan 24 16:42:26 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * varasm.c (struct pool_constant): Add mark field. |
| (force_const_mem): Clear mark field in new constant pool entry. |
| (output_constant_pool): Call mark_constant_pool. |
| (mark_constant_pool, mark_constants): New static functions. |
| |
| Thu Jan 23 15:04:17 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * cse.c (COST): Get the right cost for a SUBREG of a register when |
| truncation is free. |
| |
| Thu Jan 23 11:19:40 1997 Mike Stump <mrs@cygnus.com> |
| |
| * Makefile.in (objc-headers): Don't try and install the headers if |
| the objc directory has been removed. |
| |
| Wed Jan 22 13:26:25 1997 Brendan Kehoe <brendan@lisa.cygnus.com> |
| |
| * i960.c (process_pragma): Call ungetc on the last character |
| that was read by the while loop, to make sure the parser sees it. |
| |
| Tue Jan 21 17:20:30 1997 Michael Meissner <meissner@tiktok.cygnus.com> |
| |
| * rs6000.c (output_toc): Move STRIP_NAME_ENCODING to common |
| code, so the test for vt's works with -mminimal-toc. |
| |
| Tue Jan 21 16:03:35 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * function.c (mark_all_temps_used): Set KEEP as well. |
| |
| Tue Jan 21 12:16:15 1997 Doug Evans <dje@seba.cygnus.com> |
| |
| * stor-layout.c (layout_record): Correct test for whether |
| field spans its unit of alignment in case where |
| field_size == type_align. |
| |
| Mon Jan 20 20:27:54 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * mips.md (probe): Comment out. |
| |
| Sun Jan 19 20:54:45 1997 John F. Carr <jfc@mit.edu> |
| |
| * integrate.c (expand_inline_function): Handle a PARALLEL containing |
| a RETURN the same as a RETURN. |
| |
| Sun Jan 19 20:35:28 1997 Pat Rankin <rankin@eql.caltech.edu> |
| |
| * vmsconfig.com: Change all hardcoded references of "vax" to |
| use variable expansion instead. |
| (arch_indx, arch): New variables. |
| |
| * vax.c (not_qsort): Don't declare alloca. |
| * vax/xm-vms.h: Declare alloca here. |
| Do most of the VAX C-specific set up for DEC C. |
| #if DEC C, undefine QSORT_WORKAROUND and qsort. |
| * make-gcc.com, make-cccp.com, make-cc1.com: Support building |
| with GNU C vs VAX C vs DEC C from the DCL command line. |
| |
| Sun Jan 19 17:20:50 1997 Oliver Kellogg (oliver.kellogg@space.otn.dasa.de) |
| |
| * 1750a.md (movh[if]-1): Corrected. |
| (movtqf-1): Deleted. |
| * 1750a.c (add_1_to_mem): Deleted. |
| (output_operand_address): Added output modifier 'A'. |
| |
| Sun Jan 19 17:17:54 1997 Philippe De Muyter <phdm@info.ucl.ac.be> |
| |
| * m68k.md (ashrdi_const, ashrdi3): Allow 31 as shift count. |
| |
| * m68k.h (CONST_OK_FOR_LETTER_P): Recognize 'N', 'O' and 'P'. |
| * m68k.md (rotl[shq]i3, strict_low_part rotl): Allow 'N', 'O' |
| or 'P' operands. |
| |
| Sun Jan 19 17:09:17 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> |
| |
| * m68k.md (addsi3): Fix previous change: {add,sub}qw should |
| be {add,sub}ql. For other uses of {add,sub}q don't check for address |
| register and always use {add,sub}ql. |
| |
| Sun Jan 19 15:05:42 1997 Peter Seebach <seebs@solon.com> |
| |
| * c-decl.c (start_decl): Add code for -Wmain. |
| (c_decode_option): Add -fhosted, -ffreestanding, and -Wmain. |
| * toplev.c (lang_options): Likewise. |
| * c-tree.h (warn_main, flag_hosted): New variables. |
| |
| Sun Jan 19 14:35:41 1997 Alex Garthwaite (alex@samwise.cis.upenn.edu) |
| |
| * fixinc.svr4: Fix problems with symlinks to ".". |
| |
| Sun Jan 19 14:21:46 1997 Craig Burley <burley@gnu.ai.mit.edu> |
| |
| * loop.c (check_final_value): Handle insns with no luid's. |
| |
| Sun Jan 19 08:57:26 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * alpha.md (arg_home): Add CLOBBER of MEM and USE of arg regs. |
| * vms.h (SETUP_INCOMING_VARARGS): Delete duplicate definition. |
| |
| * toplev.c (set_float_handler): Set up signal catcher on first call |
| in case a front end has disabled it. |
| |
| * cccp.c, cexp.y: #define __attribute__ to be null if |
| compiling with GCC older than 2.7, not 2.6. |
| |
| * toplev.c (main): If PREFERRED_DEBUGGING_TYPE used and set |
| to NO_DEBUG, say debugging not supported. |
| * mips/sni-svr4.h (PREFERRED_DEBUGGING_TYPE): Undefine. |
| |
| * i386/xm-cygwin32.h (DIR_SEPARATOR): Define. |
| |
| * explow.c (convert_memory_address, case SYMBOL_REF): |
| Copy CONSTANT_POOL_ADDRESS_P. |
| * integrate.c (save_constants): Make (address (const ..)) to record |
| both modes. |
| (copy_for_inline, copy_rtx_and_substitute, restore_constants): Use |
| both modes when restoring constant pool entry for ADDRESS. |
| |
| * alpha.h (MINIMUM_ATOMIC_ALIGNMENT): New macro. |
| |
| * function.c (instantiate_virtual_regs_1, case USE, case CLOBBER): |
| Properly handle case of shared MEM whose replacement is not valid. |
| |
| Sat Jan 18 14:08:31 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * tree.c (get_unwidened): Don't crash if FIELD_DECL not layed out. |
| |
| * varasm.c (const_hash): Treat NON_LVALUE_EXPR like CONVERT_EXPR. |
| (compare_constant_1, copy_constant, bc_assemble_integer): Likewise. |
| (const_hash, compare_constant_1): Use switch, not if-then-else. |
| |
| Fri Jan 17 17:10:20 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * mips.h (STACK_POINTER_OFFSET): Don't define. |
| |
| Thu Jan 16 14:51:03 1997 Bob Manson <manson@charmed.cygnus.com> |
| |
| * cplus-dem.c: Fix indenting; note that this file also lives in |
| libiberty. |
| (do_type, case 'M'): Check for a template as well as a class. |
| |
| Thu Jan 16 15:08:26 1997 Michael Meissner <meissner@tiktok.cygnus.com> |
| |
| * gcc.c (cross_compile): Change to be a char * like all of the |
| other specs. |
| (process_command): Change how cross_compile is tested. |
| (main): Likewise. |
| (struct spec_list): Merge with the format used by EXTRA_SPECS. |
| Add name length field to speed up repeated calls to strcmp. Add |
| flag to say spec was allocated. Add pointer to char * so that |
| static spec fields can be updated. |
| (extra_specs): Use struct spec_list as type. |
| (static_specs): Static list of predefined specs. |
| (init_specs): New function, initialize the specs list. Link in |
| the default specs and any specs defined via EXTRA_SPECS. |
| (set_spec): No longer special case predefined specs. |
| (process_command,validate_all_switches): Ditto. |
| (process_command): Call init_specs for -dumpspecs. |
| (do_spec_1): Use name length field to avoid calling strncmp when |
| it is going to fail. |
| (main): Call init_spec. Don't handle EXTRA_SPECS here. |
| |
| Thu Jan 16 17:07:54 1997 Eddie C. Dost <ecd@skynet.be> |
| |
| * configure: Add sparc-linux{,aout} support. |
| * ginclude/va-sparc.h: Likewise. |
| * sparc/linux.h: New file. |
| * sparc/linux-aout.h: New file. |
| * sparc/xm-linux.h: New file. |
| |
| Thu Jan 16 16:19:13 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * configure (sparc-*-aout*): Add libgloss.h to tm_file. |
| (sparclite-*-coff*): Change "= to =". |
| |
| Thu Jan 16 12:53:15 CST 1997 Joel Sherrill <joel@OARcorp.com> |
| |
| * rs6000/rtems.h: Change from being sysv4 based to being eabi based. |
| |
| Thu Jan 16 13:40:51 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * mips.h (LINKER_ENDIAN_SPEC): Define. |
| (LINK_SPEC): Add linker_endian_spec. |
| (EXTRA_SPECS): Add linker_endian_spec. |
| |
| Thu Jan 16 08:02:13 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * mn10300.md (bCC, inverted bCC): Use bCC .+X instead of bCC 0f. |
| |
| Wed Jan 15 14:06:28 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload.h (reload_address_base_reg_class): Declare. |
| (reload_address_index_reg_class): Declare. |
| * reload1.c (reload_address_base_reg_class): Define. |
| (reload_address_index_reg_class): Define. |
| (init_reload): Initialize reload_address_{base,index}_reg_class. |
| * reload.c (find_reloads_address): Use |
| reload_address_base_reg_class rather than BASE_REG_CLASS. Use |
| reload_address_index_reg_class rather than INDEX_REG_CLASS. |
| (find_reloads_address_1): Likewise. |
| |
| Tue Jan 14 15:26:33 1997 Ian Lance Taylor <ian@cygnus.com> |
| |
| * reload.c (REGNO_MODE_OK_FOR_BASE_P): Define if not defined. |
| (REG_MODE_OK_FOR_BASE_P): Define if not defined. |
| (find_reloads_address): Use REG[NO]_MODE_OK_FOR_BASE_P rather than |
| REG[NO]_OK_FOR_BASE_P. |
| (find_reloads_address_1): Likewise. |
| Add mode parameter; change all callers. |
| |
| * reload1.c (eliminate_regs_in_insn): Handle more cases when |
| eliminating the frame pointer to the hard frame pointer. |
| |
| * varasm.c (force_const_mem): Copy a CONST_INT rtx like a CONST rtx. |
| |
| * varasm.c (assemble_end_function): Call |
| output_after_function_constants. |
| (after_function_constants): New static variable. |
| (output_after_function_constants): New static function. |
| (output_constant_def): Check CONSTANT_AFTER_FUNCTION_P. |
| |
| Mon Jan 13 16:44:40 1997 David Edelsohn <edelsohn@mhpcc.edu> |
| |
| * rs6000/aix41.h (CPP_PREDEFINES): Add -D_AIX41. |
| |
| Sun Jan 12 20:54:01 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * libgloss.h (LINK_SPEC): Delete. |
| (STARTFILE_SPEC): Delete spurious newline. |
| |
| Sat Jan 11 00:13:03 1997 Torbjorn Granlund <tege@quiet.matematik.su.se> |
| |
| * mips.md (norsi3, nordi3): Use canonical RTL. Prepend `*' to pattern |
| name. Don't match immediates. |
| (norsi3_const, nordi3_const): New patterns. |
| (anddi3, iordi3, xordi3): Test TARGET_64BIT, not mips_isa |
| in length attribute calculation. |
| * mips.c (complemented_arith_operand): New function. |
| (print_operand): Handle `e' for CONST_INT. |
| * mips.h (PREDICATE_CODES): Add complemented_arith_operand. |
| |
| Fri Jan 10 14:11:53 1997 David Edelsohn <edelsohn@mhpcc.edu> |
| |
| * rs6000/aix41.h (SUBTARGET_SWITCHES): Add threads and pe. |
| (CPP_SPEC): Add mpe and mthreads cases. |
| (LIB_SPEC): Add mpe and mthreads cases to variant from rs6000.h. |
| (STARTFILE_SPEC): Add mpe and mthreads support. |
| |
| Fri Jan 10 07:12:26 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * i386/cygwin32.h (LINK_SPEC): New definition. |
| |
| * Makefile.in (FLAGS_TO_PASS): Add STAGE_PREFIX, set by configure. |
| * configure: Initialize exeext. |
| Update STAGE_PREFIX in Makefile. |
| |
| * dwarfout.c (dwarfout_line): Push to LINE_SECTION after calling |
| lookup_filename. |
| |
| Thu Jan 9 12:06:04 1997 Jim Wilson <wilson@cygnus.com> |
| |
| * i386.md (addsidi3_2): Add & to operand 0 of alternative 5. |
| |
| Thu Jan 9 12:06:04 1997 Stan Cox <coxs@dg-rtp.dg.com> |
| |
| From Linus Torvalds and Mat Hostetter: |
| * i386.c (i386_sext16_if_const): Added to sign extend an HImode constant. |
| (i386_aligned_reg_p): Added to tell if an rtx is aligned. |
| (i386_cc_probably_useless_p): Don't trust cc bits. |
| * i386.h (TARGET_ZERO_EXTEND_WITH_AND): Don't do this for p6. |
| * i386.md (cmpsf_ccfpeq+2): Use SImode test instruction. |
| (movhi+1): Use movz instead of mov on p6. |
| (addsi3): Add 128 by subtracting -128. |
| (zero_extendhisi2): Use SImode move if aligned. |
| (addhi3): Likewise. |
| (subhi3): Likewise. |
| (andhi3): Likewise. |
| (iorhi3): Likewise. |
| (xorhi3): Likewise. |
| |
| Tue Jan 7 16:58:27 1997 Jason Merrill <jason@yorick.cygnus.com> |
| |
| * c-parse.in (extension): New rule for __extension__. |
| (extdef, unary_expr, decl, component_decl): Use it. |
| |
| Mon Jan 6 15:44:37 1997 Oliver Kellogg (oliver.kellogg@space.otn.dasa.de) |
| |
| * 1750a.c: Now includes regs.h. |
| ({movcnt,mod}_regno_adjust): Corrected typos. |
| * 1750a.md (movhi): Corrected case of moving constant to memory. |
| |
| Mon Jan 6 08:00:57 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * mips.h: Delete redundant definitions of compiler and library fns. |
| |
| * dwarfout.c (type_attribute): Ignore any subtype for now. |
| |
| * fold-const.c (operand_equal_p): Rework to consider two |
| expressions that have embedded identical SAVE_EXPRs as |
| equivalent; also handle some more cases. |
| |
| Sun Jan 5 23:54:34 1997 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.md (pic_load_label): Fix test for using just an |
| ldo rather than an addil;ldo sequence to load the label's |
| address. |
| |
| Sun Jan 5 07:26:47 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * expr.c (expand_expr, case COMPONENT_REF): Fix error in last |
| change: don't suppress conversion if just EXPAND_SUM. |
| |
| Sat Jan 4 18:44:01 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * tree.h (struct tree_decl): saved_insns.i is HOST_WIDE_INT. |
| |
| * fold-const.c (const_binop): Rework to only make constants in |
| one place; always use size_int if small enough and of sizetype. |
| (size_int): Call force_fit_type. |
| (fold): Avoid ever changing type of input tree. |
| |
| * expr.c (get_inner_reference): Fix type error. |
| (expand_expr, case COMPONENT_REF): Don't convert if modifier |
| is EXPAND_CONST_ADDRESS, EXPAND_SUM, or EXPAND_INITIALIZER. |
| * tree.c (staticp, case COMPONENT_REF, BIT_FIELD_REF): Not |
| static if bitfield. |
| |
| * expr.c (expand_expr, case COMPONENT_REF): If taking value |
| from a CONSTRUCTOR, must mask/sign-extend if bitfield. |
| (expand_builtin, case BUILT_IN_LONGJMP): Pass type, not IDENTIFIER, |
| to second arg of RETURN_POPS_ARGS. |
| |
| * expr.c (expand_expr, case COND_EXPR): Add additional cases |
| to "singleton" cases. |
| * tree.c (integer_pow2): Mask value to width of type. |
| (tree_log2): New function. |
| |
| * expmed.c (store_fixed_bit_field): If not SLOW_UNALIGNED_ACCESS, |
| treat everything as maximally aligned. |
| |
| * combine.c (find_split_point, case SET): If SET_SRC is NE and |
| STORE_FLAG_VALUE is -1, see if we can convert into NEG of shift. |
| (force_to_mode, case NE): Make condition stricter. |
| |
| * calls.c (emit_library_call_value): Remove redundant check for |
| outmode != VOIDmode. |
| |
| Sat Jan 4 08:12:16 1997 J.T. Conklin <jtc@rhino.cygnus.com> |
| |
| * Optimizations from John Vickers (john@rhizik.demon.co.uk): |
| * m68k.c (output_function_{pro,epi}logue): Use addq/subq when |
| adjusting stack pointer by small displacements. |
| * m68k.md (addsi3, addhi3): Use two addqw (or subqw) insns when |
| adding (or subtracting) small integer constants (8 < N <= 16) to |
| both address and data registers. |
| |
| Sat Jan 4 07:06:07 1997 Kamil Iskra <iskra@student.uci.agh.edu.pl> |
| |
| * loop.c (basic_induction_var): Return 0 if SUBREG is not a |
| promoted variable. |
| |
| Sat Jan 4 06:22:36 1997 Doug Rupp (rupp@gnat.com) |
| |
| * alpha.c (vmskrunch): Try to not chop trailing uppercase letters. |
| * alpha/vms.h (ENDFILE_SPEC): Use "gnu", not "gnu_cc". |
| |
| * cccp.c (PRINTF_PROTO): Use __printf__ in __attribute__, not printf. |
| * cexp.y (PRINTF_PROTO): Likewise. |
| |
| Fri Jan 3 09:01:00 1997 Craig Burley <burley@gnu.ai.mit.edu> |
| |
| * alpha.md (cmov): Fix operand numbers in case involving DF target, |
| DF comparison, and SF source. |
| |
| Fri Jan 3 08:19:46 1997 Paul Eggert <eggert@twinsun.com> |
| |
| * cpplib.c (macroexpand): Delete any no-reexpansion marker following |
| identifier at beginning of an argu concatenated with what precedes it. |
| |
| Fri Jan 3 07:59:21 1997 Ken Rose (rose@netcom.com) |
| |
| * reorg.c (fill_slots_from_thread): Skip moved insn in all three cases. |
| |
| Fri Jan 3 07:51:44 1997 Bob Manson <manson@cygnus.com> |
| |
| * function.c ({push,pop}_function_context_to): Save and restore |
| current_function_args_info. |
| * function.h (struct function): New field args_info. |
| |
| Fri Jan 3 06:55:09 1997 Richard Kenner (kenner@vlsi1.ultra.nyu.edu) |
| |
| * jump.c (rtx_equal_for_thread_p): Return 0 for floating-point. |
| |
| * reload.c (find_reloads): If replaced a PLUS or MULT with a |
| simple operand, start over again. |
| |
| * va-alpha.h: Check for __VMS__, not VMS. |
| |
| Thu Jan 2 08:52:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
|