]> gcc.gnu.org Git - gcc.git/blobdiff - gcc/ChangeLog
* Makefile.in (BOOT_CFLAGS): Use -O2.
[gcc.git] / gcc / ChangeLog
index dd4cedaa961572b6a4cd6c81f0608d0c425a6278..9424fd900486fb5962f904a02ca9e06c5e547b60 100644 (file)
@@ -1,6 +1,366 @@
-Wed Sep 10 10:51:21 1997  Jeffrey A Law  (law@cygnus.com)
+Thu Sep 18 21:13:40 1997  Jeffrey A Law  (law@cygnus.com)
 
-       * expr.c (emit_block_move): Always return a value.
+       * Makefile.in (BOOT_CFLAGS): Use -O2.
+
+       * configure.in (strtoul, bsearch): Have autoconf check for these
+       functions.
+       * configure, config.in: Rebuilt.
+
+       * m68k/xm-mot3300.h (alloca): Properly declare if __STDC__.
+       * mips/mips.h (alloca): Likewise.
+       * rs6000/xm-rs6000.h (alloca): Likewise.
+       * rs6000/xm-sysv4.h: Likewise.
+
+Thu Sep 18 14:22:22 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * final.c (final_scan_insn): Hand BARRIERs off to the dwarf2 code.
+       * dwarf2out.c (dwarf2out_frame_debug): Pass the whole insn along.
+       (dwarf2out_stack_adjust): A BARRIER resets the args space to 0.
+
+       * except.c (end_eh_unwinder): Subtract 1 from return address.
+       * libgcc2.c (__throw): Likewise.
+       (find_exception_handler): Don't change PC here.  Compare end with >.
+
+Thu Sep 18 10:43:07 1997  Nick Clifton  <nickc@cygnus.com>
+       * v850.c (compute_register_save_size): Correct register
+       number.
+       * v850.md (save_interrupt, return_interrupt): Correct
+       register number.
+       * v850/lib1funcs.asm (save_interrupt): Correct register number.
+       (return_interrupt): Use stack pointer, not element pointer.
+
+1997-09-18  Brendan Kehoe  <brendan@lisa.cygnus.com>
+
+       * configure.in, configure: Make sure to create the stage* and include
+       symbolic links in each subdirectory.
+
+Thu Sep 18 01:47:06 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * pa.md (reload_peepholes): Don't allow addresses with side
+       effects for the memory operand.
+
+Wed Sep 17 18:19:53 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * libgcc2.c (find_exception_handler): Subtract one from our PC when
+       looking for a handler, to avoid hitting the beginning of the next
+       region.
+
+       * except.c (expand_builtin_set_return_addr_reg): Use force_operand.
+
+Wed Sep 17 18:33:59 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * mips/abi64.h (LONG_MAX_SPEC): Define.
+       * mips.h (LONG_MAX_SPEC): Define.
+       (CPP_SPEC): Include long_max_spec.
+       (EXTRA_SPECS): Include long_max_spec.
+
+Wed Sep 17 14:11:38 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * v850.c (construct_save_jarl): Fix thinko in last change.
+
+Wed Sep 17 09:53:07 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * version.c: Bump for snapshot.
+
+Tue Sep 16 14:22:36 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * libgcc2.c (find_exception_handler): Not found is -1.
+
+       * integrate.c (expand_inline_function): Move expand_start_bindings
+       after expanding the arguments.
+
+Tue Sep 16 11:13:46 1997  Jim Wilson  <wilson@cygnus.com>
+
+       * expr.c (expand_expr): Remove previous incorrect change.
+       If target and slot has no DECL_RTL, then call mark_addressable
+       again for the slot after we give it RTL.
+
+Tue Sep 16 09:18:52 1997  Jason Merrill  (jason@cygnus.com)
+
+       * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
+       again for the slot after we give it RTL.
+
+Tue Sep 16 00:13:20 1997  Nick Clifton  <nickc@cygnus.com>
+
+       * v850.c (register_is_ok_for_epilogue,
+       pattern_is_ok_for_epilogue, construct_restore_jr,
+       pattern_is_ok_for_prologue, construct_save_jarl): New functions.
+
+       * v850.h (pattern_is_ok_for_prologue,
+       pattern_is_ok_for_epilogue, register_is_ok_for_epilogue): New
+       predicates.
+
+       * v850.md: Replace prologue and epilogue patterns with a
+       match_parallel pattern.
+
+Mon Sep 15 22:53:01 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * aclocal.m4: Add replacement for AC_PROG_INSTALL.
+       * configure.in: Use EGCS_PROG_INSTALL.
+
+Mon Sep 15 22:40:55 1997  Jim Wilson  (wilson@cygnus.com)
+
+       * dwarf2out.c (gen_subprogram_die): Handle redefinition of an
+       extern inline function.
+
+Mon Sep 15 22:40:55 1997  Richard Henderson  (rth@cygnus.com)
+
+       * dwarf2out.c (reg_loc_descriptor): Fix prototype.
+       (concat_loc_descriptor): New function.
+       (loc_descriptor): Call it.
+       (add_AT_location_description): Also elide the descriptor if both
+       halves of a CONCAT are pseudos.
+       (add_location_or_const_value_attribute): Recognize CONCAT too.
+
+Mon Sep 15 15:24:00 1997  Richard Henderson  <rth@cygnus.com>
+
+       * alpha.md (movdi): Handle CONST_DOUBLE for TARGET_BUILD_CONSTANTS.
+
+       * alpha/alpha.c (output_prolog): New variable sa_reg.  Use it for
+       out-or-range reg_offset.
+       (output_epilog): Likewise.
+
+Mon Sep 15 15:39:26 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * cse.c (simplify_relational_operation): If MODE specifies a
+       mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
+       is derived from the sign bit of the low word.
+
+Mon Sep 15 11:43:38 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       Support dwarf2 unwinding on PUSH_ROUNDING targets like the x86.
+
+       * dwarf2.h: Add DW_CFA_GNU_args_size.
+       * frame.c (execute_cfa_insn): Likewise.
+       * dwarf2out.c (dwarf_cfi_name, output_cfi): Likewise.
+       (dwarf2out_args_size, dwarf2out_stack_adjust): New fns.
+       (dwarf2out_frame_debug): If this isn't a prologue or epilogue
+       insn, hand it off to dwarf2out_stack_adjust.
+       (dwarf2out_begin_prologue): Initialize args_size.
+       * frame.h (struct frame_state): Add args_size.
+       * libgcc2.c (__throw): Use args_size.
+       * final.c (final_scan_insn): If we push args, hand off all insns
+       to dwarf2out_frame_debug.
+       * defaults.h (DWARF2_UNWIND_INFO): OK for !ACCUMULATE_OUTGOING_ARGS.
+
+       * dwarf2out.c dwarf2out_frame_debug): Fix typo.
+       Handle epilogue restore of SP from FP.
+       * emit-rtl.c (gen_sequence): Still generate a sequence if the 
+       lone insn has RTX_FRAME_RELATED_P set.
+
+       * frame.c (extract_cie_info): Handle "e" augmentation.
+       * dwarf2out.c (ASM_OUTPUT_DWARF_*): Provide definitions in the
+       absence of UNALIGNED_*_ASM_OP.
+       (UNALIGNED_*_ASM_OP): Only provide defaults if OBJECT_FORMAT_ELF.
+       (output_call_frame_info): Use "e" instead of "z" for augmentation.
+       Don't emit augmentation fields length.
+       (dwarf2out_do_frame): Move outside of #ifdefs.
+       * defaults.h (DWARF2_UNWIND_INFO): Don't require unaligned data
+       opcodes.
+
+       * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here after all.
+       * sparc/sysv4.h (UNALIGNED_INT_ASM_OP): Define here.
+       * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define to 0.
+       * sparc/sun4gas.h: New file.
+       * configure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.
+
+       * collect2.c (write_c_file_stat, write_c_file_glob): Declare 
+       __register_frame_table and __deregister_frame.
+
+1997-09-15  Brendan Kehoe  <brendan@cygnus.com>
+
+       * except.c (find_exception_handler_labels): Use xmalloc instead of
+       alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
+       in some cases.
+
+Sun Sep 14 21:01:23 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * Makefile.in: Various changes to build info files
+       in the object tree rather than the source tree.
+
+Sun Sep 14 12:24:30 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * fixinc.math: New file to fix math.h on some systems.
+       * configure.in (freebsd, netbsd): Use fixinc.math on these
+       systems.
+       * configure: Rebuilt.
+
+Sun Sep 14 11:11:05 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * regmove.c (regmove_optimize): If we end up moving the
+       original insn due to lifetime overlaps, make sure to move
+       REG_NOTES too.
+
+Sat Sep 13 15:51:11 1997  Manfred Hollstein  <manfred@s-direktnet.de>
+
+       * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
+
+Sat Sep 13 12:57:26 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * haifa-sched.c (add_branch_dependences): Make each insn in
+       a SCHED_GROUP_P block explicitly depend on the previous insn.
+
+Fri Sep 12 13:49:58 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * except.h: Prototype dwarf2 hooks.
+       * expr.c: Adjust.
+
+Thu Sep 11 17:43:55 1997  Jim Wilson  <wilson@cygnus.com>
+
+       * configure.in (native_prefix): Delete.
+       (mips-dec-netbsd): Don't set prefix.
+       (*linux*): Don't set prefix.
+
+Thu Sep 11 15:48:32 1997  Fred Fish  <fnf@ninemoons.com>
+
+       * protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
+       defined.  If not defined, include <sys/varargs.h> if
+       HAVE_SYS_VARARGS_H is defined.
+       * configure.in: Test for varargs.h and sys/varargs.h.
+       * configure: Regenerate with autoconf.
+       * config.in: Regenerate with autoheader.
+
+       * cpplib.c (quote_string): Cast first arg of sprintf call
+       from "unsigned char *" to "char *".
+       (output_line_command): Ditto.
+       (macroexpand): Ditto.
+       (do_line): Cast atoi arg from "unsigned char *" to "char *".
+
+Wed Sep 10 21:37:30 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * version.c: Bump for snapshot.
+
+       * Makefile.in (compare): Exit with nonzero status if there
+       are comparison failures.  Note which files failed the
+       comparison test in .bad_compare.
+
+Wed Sep 10 17:05:46 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
+
+       * config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.
+
+Wed Sep 10 16:37:28 1997  Fred Fish  <fnf@ninemoons.com>
+
+       * Makefile.in (LN, LN_S): New macros, use where appropriate.
+       * aclocal.m4 (GCC_PROG_LN_S, GCC_PROG_LN): New tests.
+       * configure.in: Use GCC_PROG_LN_S and GCC_PROG_LN.
+       * configure: Regenerated.
+
+Thu Sep 11 11:09:43 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * loop.c (strength_reduce): Fix typo.
+
+Wed Sep 10 16:01:15 1997  Jim Wilson  <wilson@cygnus.com>
+
+       * m88k/m88k.c (struct option): Rename to struct options.
+       * m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
+       * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
+       * libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
+       __DOLPHIN__ or sysV88.
+
+Wed Sep 10 14:58:40 1997  Jim Wilson  <wilson@cygnus.com>
+
+       * emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
+       create new subreg.
+
+Wed Sep 10 15:19:22 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * config.sub: Accept 'amigados' for backward compatability.
+
+Wed Sep 10 14:05:08 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
+
+       * Makefile.in (testsuite/site.exp): New target.
+       (check-gcc, check-g++): Depend on testsuite/site.exp.
+       Don't stop for failure.
+
+Wed Sep 10 12:59:57 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * expr.c (expand_builtin): Only support __builtin_dwarf_fp_regnum()
+       if DWARF2_UNWIND_INFO.
+
+Wed Sep 10 11:49:20 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       Add support for exception handling using DWARF 2 frame unwind info.
+       Currently works on SPARC and MIPS, and almost on x86.
+       
+       * libgcc2.c (get_reg, put_reg, get_return_addr, put_return_addr,
+       next_stack_level, in_reg_window): Helper fns.
+       (__throw): Implement for DWARF2_UNWIND_INFO.
+
+       * expr.c (expand_builtin): Handle builtins used by __throw.
+       * tree.h (enum built_in_function): Add builtins used by __throw.
+       * c-decl.c (init_decl_processing): Declare builtins used by __throw.
+       * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Used by __throw.
+       * except.c (expand_builtin_unwind_init): Hook for dwarf2 __throw.
+       (expand_builtin_extract_return_addr): Likewise.
+       (expand_builtin_frob_return_addr): Likewise.
+       (expand_builtin_set_return_addr_reg): Likewise.
+       (expand_builtin_eh_stub): Likewise.
+       (expand_builtin_set_eh_regs): Likewise.
+       (eh_regs): Choose two call-clobbered registers for passing back values.
+
+       * frame.c, frame.h: New files for parsing dwarf 2 frame info.
+       * Makefile.in (LIB2ADD): New variable.  Add $(srcdir)/frame.c.
+       (libgcc2.a): Use it instead of $(LIB2FUNCS_EXTRA) $(LANG_LIB2FUNCS)
+       (stmp-multilib): Likewise.
+       ($(T)crtbegin.o, $(T)crtend.o): Add -fno-exceptions.
+
+       * except.c: #include "defaults.h".
+       (exceptions_via_longjmp): Default depends on DWARF2_UNWIND_INFO.
+       (emit_throw): Don't defeat assemble_external if DWARF2_UNWIND_INFO.
+       (register_exception_table_p): New fn.
+       (start_eh_unwinder): Don't do anything if DWARF2_UNWIND_INFO.
+       (end_eh_unwinder): Likewise.
+
+       * crtstuff.c: Wrap .eh_frame section, use EH_FRAME_SECTION_ASM_OP, 
+       call __register_frame and __deregister_frame as needed.
+       * varasm.c (eh_frame_section): New fn if EH_FRAME_SECTION_ASM_OP.
+       * dwarf2out.c (EH_FRAME_SECTION): Now a function-like macro.  Check
+       EH_FRAME_SECTION_ASM_OP.
+       * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP): Define.
+       * mips/iris6.h: (EH_FRAME_SECTION_ASM_OP): Define.
+       (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden symbols.
+
+       * dwarf2out.c (output_call_frame_info): If no support for
+       EXCEPTION_SECTION, mark the start of the frame info with a
+       collectable tag.
+       * collect2.c (frame_tables): New list.
+       (is_ctor_dtor): Recognise frame entries.
+       (scan_prog_file): Likewise.
+       (main): Pass -fno-exceptions to sub-compile.  Also do collection
+       if there are any frame entries.
+       (write_c_file_stat): Call __register_frame_table and
+       __deregister_frame as needed.
+       (write_c_file_glob): Likewise.
+
+       * defaults.h (DWARF2_UNWIND_INFO): Default to 1 if supported.  
+       Also require unaligned reloc support.
+       * sparc.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
+       UNALIGNED_DOUBLE_INT_ASM_OP): Define here.
+       * sparc/sysv4.h: Not here.
+
+       * toplev.c (compile_file): Call dwarf2out_frame_{init,finish}.
+       * dwarf2out.c (dwarf2out_init): Don't call dwarf2out_frame_init.
+       (dwarf2out_finish): Don't call dwarf2out_frame_finish.
+
+       * libgcc2.c (L_eh): Reorganize, moving code shared by different
+       EH implementations to the top.
+       (find_exception_handler): Split out.  Start from 0.  Compare against
+       end with >=.
+       (__find_first_exception_table_match): Use it.
+       * except.c (output_exception_table): Don't do anything if there's
+       no table.  Don't output a first entry of zeroes.
+       (eh_outer_context): Adjust properly.
+       (add_eh_table_entry): Use xrealloc.
+       * toplev.c (compile_file): Just call output_exception_table.
+
+Wed Sep 10  11:30:36 1997  Jason Merrill  <jason@cygnus.com>
+
+       * i386.c (ix86_prologue): Add dwarf2 support for !do_rtl case.
+
+Wed Sep 10 08:17:10 1997  Torbjorn Granlund  <tege@pdc.kth..se>
+
+       * except.c (eh_outer_context): Do masking using expand_and.
 
 Wed Sep 10 01:38:30 1997  Doug Evans  <dje@cygnus.com>
 
@@ -42,10 +402,38 @@ Tue Sep  9 17:07:36 1997  Stan Cox  <coxs@dg-rtp.dg.com>
        * m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
        template.
 
+Tue Sep  9 09:50:02 1997  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * dwarf2out.c (output_call_frame_info): Call named_section.
+
 Tue Sep  9 09:12:17 1997  Jeffrey A Law  (law@cygnus.com)
 
        * haifa-sched.c (print_value): Fix last change.
 
+Tue Sep  9 01:30:37 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * mips.h (DWARF_FRAME_REGNUM): Use the same numbering regardless of
+       write_symbols.
+
+Mon Sep  8 16:32:43 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * mips.c (function_prologue): Set up the CFA when ABI_32.
+
+       * sparc.c (save_regs): Check dwarf2out_do_frame instead of DWARF2_DEBUG
+       for dwarf2 unwind info.
+       (output_function_prologue, sparc_flat_output_function_prologue): Same.
+
+       * final.c (final_end_function): Check dwarf2out_do_frame instead
+       of DWARF2_DEBUG for dwarf2 unwind info.
+       (final_scan_insn): Likewise.
+       (final_start_function): Likewise.  Initialize dwarf2 frame debug here.
+       (final): Not here.
+
+       * expr.c (expand_builtin_return_addr): Only SETUP_FRAME_ADDRESSES if
+       count > 0.
+
+       * varasm.c (exception_section): Check EXCEPTION_SECTION first.
+
 Mon Sep  8 15:15:11 1997  Nick Clifton  <nickc@cygnus.com>
 
        * v850.h (ASM_SPEC): Pass on target processor.
@@ -106,8 +494,8 @@ Sun Sep  7 14:17:36 1997  Torbjorn Granlund  (tege@pdc.kth.se)
 
 Sun Sep  7 13:46:46 1997  Jeffrey A Law  (law@cygnus.com)
 
-        * final.c (shorten_branches): During first pass, assume worst
-        possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
+       * final.c (shorten_branches): During first pass, assume worst
+       possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
 
        * Makefile.in (distclean): Remove various things left around
        by running the testsuite.
@@ -120,7 +508,7 @@ Sun Sep  7 13:16:06 1997  Manfred Hollstein  <manfred@s-direktnet.de>
 
 Sun Sep  7 09:59:08 1997  Jan-Jaap van der Heijden (J.J.vanderHeijden@student.utwente.nl)
 
-        * configure.in: Make symlink to as-new rather than as.new.  Similarly
+       * configure.in: Make symlink to as-new rather than as.new.  Similarly
        for ld-new.
        * configure: Rebuilt.
 
@@ -168,7 +556,7 @@ Fri Sep  5 09:37:50 1997  Jim Wilson  (wilson@cygnus.com)
 
 Fri Sep  5 09:08:44 1997  Jeffrey A Law  (law@cygnus.com)
 
-        * install.sh: Delete duplicate install script.
+       * install.sh: Delete duplicate install script.
 
 Thu Sep  4 23:14:27 1997  Stan Cox  (coxs@dg-rtp.dg.com)
 
@@ -214,7 +602,7 @@ Thu Sep  4 11:51:43 1997  Jim Wilson  <wilson@cygnus.com>
 Thu Sep  4 11:17:16 1997  Mikeael Meissner  (meissner@cygnus.com)
 
        * bitmap.c: Conditionally include stdlib.h.
-        (free): Provide a declaration if NEED_DECLARATION_FREE.
+       (free): Provide a declaration if NEED_DECLARATION_FREE.
 
 Thu Sep  4 09:58:53 1997  Joel Sherrill  (joel@OARcorp.com)
 
@@ -752,6 +1140,11 @@ Fri Aug 15 13:43:39 1997  Michael Meissner  <meissner@cygnus.com>
        print out the names of the notes.  Print out the name of the insn
        that is not a note, and not an {,CALL_,JUMP_}INSN.
 
+Wed Aug 13 17:32:38 1997  Jason Merrill  <jason@yorick.cygnus.com>
+
+       * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
+       again for the slot after we give it RTL.
+
 Wed Aug 13 01:03:37 1997  Doug Evans  <dje@canuck.cygnus.com>
 
        * configure.in (haifa configury): Fix typo.
This page took 0.043416 seconds and 5 git commands to generate.