OSDN Git Service

* alpha.md (addsi3, subsi3): No new temporaries once cse is
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 22c38bc..818cff0 100644 (file)
@@ -1,3 +1,321 @@
+Thu Nov  5 04:03:06 1998  Richard Henderson  <rth@cygnus.com>
+
+       * alpha.md (addsi3, subsi3): No new temporaries once cse is
+       no longer expected.
+
+Thu Nov  5 03:29:19 1998  Richard Henderson  <rth@cygnus.com>
+
+       * alpha.md (addsi3, subsi3): Expand to a DImode temporary so as
+       to expose this midpoint to CSE.
+
+Thu Nov  5 03:42:54 1998  David S. Miller  <davem@pierdol.cobaltmicro.com>
+
+       * config/sparc/sparc.md (movdf_const_intreg_sp64): Enable again.
+
+Thu Nov  5 10:53:01 1998  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
+
+       * configure.in: Bring over gcc2 change of Nov 19 1997.
+
+Wed Nov  4 23:43:08 1998  Graham  <grahams@rcp.co.uk>
+
+        * toplev.c (output_lang_identify): Make definition dependent on
+       ASM_IDENTIFY_LANGUAGE.
+
+        * print-rtl.c (spaces): Make static.
+
+Wed Nov  4 22:16:36 1998  Hans-Peter Nilsson  <hp@axis.se>
+
+       * extend.texi: Clarify proper uses for register clobbers in asms.
+
+Wed Nov  4 22:16:36 1998  Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
+
+       * recog.h (enum op_type): Define.
+       (constrain_operands): Adjust prototype.
+       (recog_op_type): Declare new variable.
+       * recog.c (recog_op_type): New variable.
+       (insn_invalid_p): Allow modifying an asm statement after reload.
+       (extract_insn): Set up recog_op_type.
+       (constrain_operands): Lose INSN_CODE_NUM arg.  All callers changed.
+       Don't compute operand types, use recog_op_type.
+       Use the information computed by extract_insn instead of the previous
+       method of finding it by insn code number.
+       * caller-save.c (init_caller_save): Use extract_insn, not insn_extract.
+       * reorg.c (fill_slots_from_thread): Likewise.
+       * reload1.c (reload_as_needed): Likewise.
+       (gen_reload): Likewise.
+       (inc_for_reload): Likewise.
+       (reload_cse_simplify_operands): Likewise.
+       Use the information computed by extract_insn instead of the previous
+       method of finding it by insn code number.
+       * genattrtab.c (write_attr_case): Generate call to extract_insn, not
+       insn_extract.
+       * final.c (final_scan_insn): Use extract_insn, not insn_extract.
+       (cleanup_operand_subregs): Use extract_insn, not insn_extract.
+       Use the information computed by extract_insn instead of the previous
+       method of finding it by insn code number.
+       * regmove.c (find_matches): Likewise.  Change meaning of the return
+       value to be nonzero if the optimization can be performed, zero if
+       not.  All callers changed.
+       Shorten some variable names to fix formatting problems.
+       (regmove_optimize): Shorten some variable names to fix formatting
+       problems.
+       Use the information computed by extract_insn instead of the previous
+       method of finding it by insn code number.
+       * regclass.c (scan_one_insn): Likewise.
+       (record_reg_classes): Don't compute operand types, use recog_op_type.
+       * reload.c (find_reloads): Lose CONSTRAINTS1 variable; use
+       recog_constraints instead.
+
+Wed Nov  4 21:37:46 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * rtl.h (flow2_completed): Declare.
+       * flow.c (flow2_completed): Definition.
+       * toplev.c (rest_of_compilation): Set and clear flow2_completed
+       as necessary.
+
+Wed Nov  4 19:15:37 1998  "Melissa O'Neill" <oneill@cs.sfu.ca>
+
+       * Makefile.in (libcpp.a): Ranlib libcpp.a
+
+       * cppulp.c (user_label_prefix): Initialize.
+       
+Wed Nov  4 19:07:08 1998   John Wehle  (john@feith.com)
+
+        * flow.c (mark_regs_live_at_end): Mark the stack pointer as live
+        at a RETURN if current_function_sp_is_unchanging is set.
+
+Wed Nov  4 18:16:29 1998 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> 
+
+       * emit-rtl.c (try_split): Fixed error in Oct 10 patch.
+
+Wed Nov  4 15:11:15 1998  Geoffrey Noer  <noer@cygnus.com>
+
+       * i386/cygwin32.h (MASK_WIN32, MASK_CYGWIN, MASK_WINDOWS, MASK_DLL,
+       TARGET_WIN32, TARGET_CYGWIN, TARGET_WINDOWS, TARGET_DLL): New.
+       (SUBTARGET_SWITCHES): Add -mno-cygwin, -mcygwin, and -mdll options.
+       (CPP_PREDEFINES): Don't define __CYGWIN32__ here.
+       (STARTFILE_SPEC): Handle -mdll, -mno-cygwin options.
+       (CPP_SPEC): Handle -mno-cygwin option.  Define __CYWIN__ in addition
+       to __CYGWIN32__.
+       (LIB_SPEC): Handle -mno-cyginw option.
+       (LINK_SPEC): Handle -mdll.
+
+Wed Nov  4 22:56:14 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * reload.c (find_reloads): Fix test for usage by other reload
+       to handle secondary reloads properly.
+
+Wed Nov  4 17:25:10 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * reload1.c (ELIMINABLE_REGS, NUM_ELIMINABLE_REGS): Introduce an
+       intermediate structure which has exactly the members provided by
+       ELIMINABLE_REGS.  Define NUM_ELIMINABLE_REGS in terms of the
+       static intermediate structure.
+       
+       (init_elim_table): Xmalloc() `reg_eliminate', and initialize it
+       from the intermediate structure.  Do the same analogous fix in
+       the case where ELIMINABLE_REGS is not defined.
+
+Tue Nov  3 20:50:03 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * pa.h (SELECT_SECTION): Fix thinko.
+
+Tue Nov  3 17:51:36 1998  Jim Wilson  <wilson@cygnus.com>
+
+       * dwarf2out.c (output_call_frame_info): Comments on last change.
+
+Tue Nov  3 07:51:43 1998  Richard Earnshaw (rearnsha@arm.com)
+
+       * arm.c (add_constant): When taking the address of an item in the
+       pool, get the mode of the item addressed.
+
+       * arm.c (final_prescan_insn case INSN): If an insn doesn't 
+       contain a SET or a PARALLEL, don't consider it for conditional
+       execution.
+
+       Restore ABI compatibility for NetBSD.
+       * arm/netbsd.h (DEFAULT_PCC_STRUCT_RETURN): Override setting in
+       arm.h
+       (RETURN_IN_MEMORY): Likewise.
+
+Mon Nov  2 11:46:17 1998  Doug Evans  <devans@canuck.cygnus.com>
+
+       * m32r/m32r.c (m32r_expand_block_move): Fix byte count computations.
+       (m32r_output_block_move): Rewrite bytes < 4 handling.
+
+Mon Nov  2 10:10:35 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * configure.in: Call AC_FUNC_VFORK.
+
+       * collect2.c: Define VFORK_STRING as a printable string for
+       error messages (either "vfork" or "fork".)  If HAVE_VFORK_H is
+       defined, include vfork.h.  If VMS is defined, define vfork()
+       appropriately.  Remove vfork check on USG, we're using autoconf.
+       (collect_execute): Pass VFORK_STRING to fatal_perror instead of
+       checking locally what string to pass.
+       (scan_prog_file): Likewise.
+       (scan_libraries): Likewise.
+
+       * gcc.c: Remove vfork check on USG, we're using autoconf.
+       Besides, no calls to vfork/fork occur in this file.
+
+       * protoize.c: Likewise.
+
+Mon Nov  2 07:52:28 1998  Alexandre Oliva  <oliva@dcc.unicamp.br>
+
+       * configure.in (DEFAULT_LINKER): renamed from LD
+       (DEFAULT_ASSEMBLER): renamed from AS; reverted Schwab's patch
+       (gcc_cv_as): try $DEFAULT_ASSEMBLER before $AS
+       * configure: rebuilt
+
+Mon Nov  2 01:48:10 1998  Alexandre Oliva  <oliva@dcc.unicamp.br>
+
+       * BUGS: fix the regexp for `more' to find the appropriate node.
+       Reported by Joerg Pietschmann  <joerg_pietschmann@zkb.ch>
+
+       * BUGS: added link to the WWW FAQ
+
+Sun Nov 1 18:27:15 PST 1998 Jeff Law  (law@cygnus.com)
+
+       * version.c: Bump for snapshot.
+
+Sun Nov  1 11:04:32 1998  Jeffrey A Law  (law@cygnus.com)
+
+        * From Christian Gafton:
+        * i386/linux.h (CPP_PREDEFINES): Add -D__i386__.
+        * sparc/linux.h (CPP_PREDEFINES): Add -D__sparc__.
+        * sparc/linux64.h (CPP_PREDEFINES): Add -D__sparc__.
+
+Sat Oct 31 21:42:39 1998  Mark Mitchell  <mark@markmitchell.com>
+
+       * c-common.c (c_get_alias_set): Allow all type-punning through
+       unions.  Don't get confused about the type of a bit-field, despite
+       the antics of build_modify_expr.
+
+Sat Oct 31 22:35:29 1998  Jean-Pierre Radley <jpr@jpr.com>
+
+       * fixinc.sco: Paramaterize #include_next values.
+       * fixinc/fixinc.sco: Likewise.
+
+Sat Oct 31 20:39:35 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * toplev.c (rest_of_compilation): No longer set reload_completed.
+       * reload1.c (reload): Set it here.  Perform instruction splitting
+       after reload has completed if we will be running the scheduler
+       again.
+
+Sat Oct 31 12:30:02 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * jump.c (jump_optimize): Initialize mappings from INSN_UID to
+       EH region if exceptions are enabled and we're performing cross
+       jump optimizations.
+       (find_cross_jump): Exit loop if the insns are in different EH regions.
+
+Sat Oct 31 10:02:48 1998  Mark Mitchell  <mark@markmitchell.com>
+
+       * dwarf2out.c (output_call_frame_info): Use
+       ASM_OUTPUT_DWARF_DELTA4 for the CIE offset to match frame.c.
+
+Sat Oct 31 10:23:14 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       Reinstall Apr 24th fix, lost during May 6th gcc2 merge:
+        * c-common.c (check_format_info): Don't check for the 'x'
+       format character twice, instead check for 'x' and 'X'
+
+Fri Oct 30 14:50:25 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * configure.in (assembler features): Also make gas is configured if
+       we find it in the souce tree.
+
+Fri Oct 30 13:23:20 1998  Richard Henderson  <rth@cygnus.com>
+
+       * i386.c (i386_comp_type_attributes): Compare whether the 
+       attributes are defined, not their tree nodes.
+
+Fri Oct 30 11:39:47 1998  Alexandre Oliva  <oliva@dcc.unicamp.br>
+
+       * configure.in (gxx_include_dir): bitten by autoconf quoting
+       characters :-(
+       * configure: rebuilt
+
+Fri Oct 30 10:43:29 1998  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
+
+       * configure.in: Ignore non-absolute value in $AS.
+
+Fri Oct 30 00:54:25 1998  Peter Jakubek <pjak@snafu.de>
+
+       * m68k.h (INDIRECTABLE_1_ADDRESS_P): Fix thinko.
+
+Fri Oct 30 00:42:34 1998  Mark Elbrecht <snowball3@usa.net>
+
+       * configure.in (msdosdjgpp): Set exeext and target_alias.
+
+Thu Oct 29 23:55:43 1998  Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
+
+       * flow.c (XNMALLOC): New macro.
+       (flow_int_list_blocks, basic_block_succ, basic_block_pred): New
+       static variables.
+       (add_edge, add_edge_to_label): New static functions.
+       (free_bb_memory): New function.
+       (flow_delete_insn): Delete function.
+       (basic_block_drops_in): Delete variable.
+       (find_basic_blocks): Allocate and initialize basic_block_head,
+       basic_block_succ.  Don't allocate basic_block_drops_in.
+       Call free_bb_memory at the beginning.
+       (find_basic_blocks_1): Don't do multiple passes.
+       Delete code to compute basic_block_drops_in.
+       After calling make_edges, mark blocks reached by current block live.
+       Update test for unreachable live blocks.
+       (mark_label_ref): Delete args X, CHECKDUP.  Add PRED arg.  All callers
+       changed.
+       Simplify to call add_edge_to_label when a LABEL_REF is found.
+       (make_edges): Simplify to call add_edge_to_label instead of
+       mark_label_ref most of the time.
+       Compute here whether control drops into the next block.
+       (delete_unreachable_blocks): Return void.  All callers changed.
+       Delete unreachable blocks in reverse order.
+       After deleting all unreachable blocks, renumber the remaining ones
+       and update n_basic_blocks.
+       (delete_block): Speed up deletion a bit.
+       Don't set basic_block_drops_in for deleted blocks.
+       (free_basic_block_vars): Don't free basic_block_drops_in.
+       (life_analysis_1): Update to use new edge representation.
+       (dump_flow_info): Delete code to print basic block info; call
+       dump_bb_data instead.
+       (compute_preds_succs): Delete code to recompute basic_block_drops_in
+       and uid_block_number.
+       Simply copy the previously computed cfg.
+       (dump_bb_data): New arg LIVE_INFO.  All callers changed.
+       Print register lifetime information if LIVE_INFO is nonzero.
+       * basic-block.h (dump_bb_data): Adjust prototype.
+       * gcse.c (gcse_main): Update call to dump_bb_data.
+       * rtl.h (free_bb_memory): Declare.
+       * toplev.c (rest_of_compilation): Call free_bb_memory.
+
+       * reload1.c (struct elim_table): Delete MAX_OFFSET member.
+       (update_eliminable_offsets): Don't compute it.
+       (set_initial_elim_offsets): Don't initialize it.
+       Break out some code into set_initial_label_offsets so the rest of
+       this function can be called from reload_as_needed.
+       Assume that INITIAL_FRAME_POINTER_OFFSET is defeined when
+       ELIMINABLE_REGS isn't.
+       (set_initial_label_offsets): New function, broken out of
+       set_initial_elim_offsets.
+       (set_offsets_for_label): New function, broken out of set_label_offsets
+       and reload_as_needed.
+       (reload): Call the two new functions.
+       (reload_as_needed): Call set_initial_elim_offsets instead of
+       duplicating the code.  Likewise for set_offsets_for_label.
+
+       * reload1.c (choose_reload_regs): Fix typo in Oct 17 change.
+       (emit_reload_insns): Ensure that when we set reg_reloaded_valid for
+       any hard reg, reg_reloaded_dead contains valid data.
+
+Thu Oct 29 22:30:54 1998  Marcus Meissner <Marcus.Meissner@informatik.uni-erlangen.de>
+
+       * i386.c (i386_comp_type_attributes): Return nonzero for mismatched
+       "stdcall" and "cdecl" attributes.
+
 Thu Oct 29 19:05:17 1998  Jim Wilson  <wilson@cygnus.com>
 
        * sched.c (update_flow_info): Add code to ! found_orig_dest case to