+Tue Aug 25 12:23:20 PDT 1998 Richard Henderson <rth@cygnus.com>
+
+ * reload.c (operands_match_p): Handle rtvecs.
+
+ * i386.c (legitimate_pic_address_disp_p): New.
+ (legitimate_address_p): Use it.
+ (legitimize_pic_address): Use unspecs to represent @GOT and @GOTOFF.
+ Handle constant pool symbols just like statics.
+ (emit_pic_move): Use Pmode not SImode for clarity.
+ (output_pic_addr_const) [SYMBOL_REF]: Remove @GOT and @GOTOFF hacks.
+ [UNSPEC]: New, handling what we killed above.
+ [PLUS]: Detect and abort on invalid symbol arithmetic.
+ * i386.h (CONSTANT_ADDRESS_P): Remove HIGH.
+
+Tue Aug 25 12:02:23 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * alias.c: Include output.h.
+ (DIFFERENT_ALIAS_SETS_P): Don't treat alias sets as
+ different if we're in a varargs function.
+ * Makefile.in (alias.o): Depend on output.h
+
+Tue Aug 25 19:20:12 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (GIV_SORT_CRITERION): Delete.
+
+Tue Aug 25 13:19:46 1998 Dave Brolley <brolley@cygnus.com>
+
+ * regclass.c (regclass): Use xmalloc/free instead of alloca.
+ * stupid.c (stupid_life_analysis): Ditto.
+ * reload1.c (reload): Ditto.
+
+Tue Aug 25 05:48:18 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
+
+ * config/sparc/sparc.c (arith_4096_operand, arith_add_operand,
+ arith_double_4096_operand, arith_double_add_operand): New
+ predicates.
+ * config/sparc/sparc.h (PREDICATE_CODES): Add them, declare them.
+ * config/sparc/sparc.md (adddi3, addsi3, subdi3, subsi3): Use
+ them to transform add/sub 4096 into add/sub -4096.
+
+Mon Aug 24 23:31:03 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * loop.c (scan_loop): Allocate some slop to handle pseudos
+ generated by move_movables.
+ (load_mems_and_recount_loop_regs_set): Honor AVOID_CC_MODE_COPIES
+ here too.
+
+Mon Aug 24 19:45:40 1998 Jim Wilson <wilson@cygnus.com>
+
+ * tree.def (DECL_RESULT): Correct documentation.
+
+Tue Aug 25 01:15:27 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (reload_reg_free_before_p): New argument EQUIV; Changed
+ all callers. Abort for RELOAD_FOR_INSN. RELOAD_FOR_OUTADDR_ADDR:
+ conflicts will all RELOAD_FOR_OUTPUT reloads.
+
+ * reload1.c (reload_cse_regs_1): When deleting a no-op move that
+ loads the function result, substitute with a USE.
+
+Mon Aug 24 15:20:19 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.h (GO_IF_LEGITIMATE_ADDRESS): Use TARGET_POWERPC64
+ when testing LEGITIMATE_INDEXED_ADDRESS_P DFmode and DImode.
+ (LEGITIMIZE_ADDRESS): Use TARGET_POWERPC64 for INDEXED fixup.
+ * rs6000.c (print_operand, case 'L'): Add UNITS_PER_WORD, not 4.
+ (print_operand, cases 'O' and 'T'): Fix typos in lossage strings.
+ * rs6000.md (fix_truncdfsi2_store): Remove %w from non-CONST_INT
+ operand.
+ (movdf_softfloat32, movdf_hardfloat64, movdf_softfloat64): Change
+ 'o' to 'm' for GPR variant constraints.
+
+Mon Aug 24 10:25:46 1998 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (scan_loop): Honor AVOID_CC_MODE_COPIES.
+
+ * h8300.h (STRIP_NAME_ENCODING): Fix typo.
+
+ * sparc.md (TFmode splits): Use reg_overlap_mentioned_p to detect
+ when the source and destination overlap.
+
+ * stmt.c (emit_case_nodes): Change rtx_function to rtx_fn to avoid
+ clash with global type.
+
+Mon Aug 24 00:53:53 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * fixinc.irix: Add curses.h handling from fixinc.wrap.
+
+Fri Aug 14 14:12:59 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * c-common.c (combine_strings): Also set TREE_READONLY.
+ Change warn_write_strings to flag_const_strings.
+ * c-decl.c, c-tree.h: Likewise.
+
+Sun Aug 23 18:39:11 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/sparc/sparc.c (sparc_emit_set_const32): If outputting a
+ CONST_INT, not a symbolic reference, don't use a HIGH/LO_SUM
+ sequence, use SET/IOR instead so CSE can see it.
+ * config/sparc/sparc.md (movhi_const64_special,
+ movsi_const64_special): New patterns necessitated by that change.
+ (movhi_high): Remove.
+ (movhi_lo_sum): Change to match an IOR.
+ (movdf_insn_sp32): Test TARGET_V9 not TARGET_ARCH64.
+ (movdf_insn_v9only): New pattern for when V9 but not ARCH64.
+ (movdf_insn_sp64): Test both TARGET_V9 and TARGET_ARCH64.
+ (movdf splits): Allow when not V9 or when not ARCH64 and integer
+ registers are involved.
+ (snesi_zero_extend split): Remove reload_completed test.
+ (unnamed plus and minus zero_extend sidi splits): Add it.
+
+Sun Aug 23 11:56:08 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * extend.texi: Remove description of extension to explicit
+ instantiation that is now endorsed by standard C++.
+
+Sun Aug 23 09:39:09 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/arc/arc.c (arc_initialize_pic): Remove.
+ * config/arc/arc.h (INITIALIZE_PIC): Similarly, this routine does
+ nothing on any platform and is invoked by no-one, it does not even
+ appear in the documentation.
+ * config/sparc/sparc.h (INITIALIZE_PIC): Likewise.
+ * config/sparc/sparc.c (initialize_pic): Likewise.
+ (find_addr_reg): Remove this as well, no longer referenced after
+ my rewrite.
+
+Sun Aug 23 00:17:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * recog.c (validate_replace_rtx_group): New function.
+ * recog.h (validate_replace_rtx_group): Declare it.
+ * regmove.c (optimize_reg_copy_3): If any substitution fails, then undo
+ the entire group of substitutions.
+
+Sat Aug 22 23:31:00 1998 Klaus-Georg Adams (Klaus-Georg.Adams@chemie.uni-karlsruhe.de)
+
+ * loop.c (load_mems): Fix initializers.
+
+Fri Aug 21 23:07:46 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/sparc/sparc.md (TFmode splits): Handle destination
+ registers being referenced in the address correctly.
+
+ * expmed.c (make_tree) [CONST_INT]: Sign extend even if
+ TREE_UNSIGNED, when bitsize of type's mode is larger than
+ HOST_BITS_PER_WIDE_INT.
+
+Fri Aug 21 19:31:31 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * tree.def (LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR): New tree nodes.
+ * tree.h (LABELED_BLOCK_LABEL, LABELED_BLOCK_BODY,
+ EXIT_BLOCK_LABELED_BLOCK, EXIT_BLOCK_RETURN, LOOP_EXPR_BODY): New
+ macros.
+ * expr.c (expand_expr): Handle LABELED_BLOCK_EXPR and
+ EXIT_BLOCK_EXPR.
+
+Thu Aug 20 19:43:44 1998 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.c (h8300_encode_label): Use '&' for tiny data items.
+ * h8300.h (TINY_DATA_NAME_P): Likewise.
+ (STRIP_NAME_ENCODING): Handle '&'.
+
+ * mn10200.h (REG_OK_FOR_INDEX_P): Do not check the mode of the
+ register (it could be accessed via an outer SUBREG).
+ (REG_OK_FOR_BASE_P): Likewwise.
+ (GO_IF_LEGITIMATE_ADDRESS): Consistently use REGNO_OK_FOR_BASE_P.
+
+ * remove.c (optimize_reg_copy_3): Abort instead of silently generating
+ bogus rtl.
+
+ * jump.c (rtx_renumbered_equal_p): Do not consider PLUS commutative.
+
+Thu Aug 20 17:35:20 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/sparc/sparc.md (movtf_insn_sp32): All memory operands
+ must be offsettable so the splits can be made.
+
+Thu Aug 20 13:56:53 1998 Michael Meissner <meissner@cygnus.com>
+
+ * config/i386/winnt.c: Include system.h, not stdio.h to get
+ sys/param.h pulled in before rtl.h in case the system defines MIN
+ and MAX.
+
+Thu Aug 20 13:44:20 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.md (movqi, movhi): Add CONSTANT_P_RTX.
+
+Thu Aug 20 13:15:11 1998 Dave Brolley <brolley@cygnus.com>
+
+ * stor-layout.c (layout_type): Compute TYPE_SIZE_UNIT correctly for
+ arrays of bits.
+ * cpplib.c (cpp_define): Handle macros with parameters.
+
+Wed Aug 19 21:33:19 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.c (rs6000_output_load_toc_table): Use ld for 64-bit.
+ (output_toc): Use single TOC slot or llong minimal-toc for DFmode
+ and DImode 64-bit. Use llong for minimal-toc SFmode and
+ SYMBOL_REF / LABEL_REF 64-bit.
+ (output_function_profiler): Use llong for profiler label and ld to
+ load 64-bit label address.
+
+Wed Aug 19 17:52:27 1998 Nick Clifton (nickc@cygnus.com)
+
+ * config/arm/thumb.md (extendqisi2_insn): Cope with REG +
+ OFFSET addressing.
+
+Wed Aug 19 14:13:31 PDT 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Wed Aug 19 13:10:30 PDT 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Wed Aug 19 13:06:47 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * collect2.c (extract_init_priority): Use atoi instead of strtoul.
+
+Wed Aug 19 13:51:35 1998 Hans-Peter Nilsson <hp@axis.se>
+
+ * tm.texi (Misc): Fix typo "teh".
+
+ * tm.texi (PIC): Fix typo "PPIC".
+
+ * tm.texi (Caller Saves): Say that DEFAULT_CALLER_SAVES has no
+ effect when -O2 and higher.
+ * invoke.texi (Optimize Options): Likewise for -fcaller-saves.
+
+1998-08-19 Michael Hayes <michaelh@ongaonga.chch.cri.nz>
+
+ * regclass.c: Changed register set documentation to be consistent
+ with GCC behaviour.
+
+ * final.c (final_start_function) Removed redundant test for
+ call_fixed_regs.
+
+Wed Aug 19 13:28:41 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * rtl.h (rtx_function): New type.
+ (for_each_rtx): New function.
+ * rtlanal.c (for_each_rtx): Define it.
+
+ * recog.c (change_t): New type.
+ (change_objects, change_old_codes, change_locs, change_olds):
+ Replace with ...
+ (changes): New variable.
+ (validate_change): Dynamically allocate room for more changes, if
+ necessary. Uses changes array instead of change_objects, etc.
+ (apply_change_group): Use changes array instead of
+ change_objects, etc.
+
+ * loop.c (loop_mem_info): New type.
+ (loop_mems): New variable.
+ (loop_mems_idx): Likewise.
+ (looop_mems_allocated): Likewise.
+ (scan_loop): Remove nregs parameter.
+ (next_insn_in_loop): New function.
+ (load_mems_and_recount_loop_regs_set): Likewise.
+ (load_mems): Likewise.
+ (insert_loop_mem): Likewise.
+ (replace_loop_mem): Likewise.
+ (replace_label): Likewise.
+ (INSN_IN_RANGE_P): New macro.
+ (loop_optimize): Don't pass max_reg_num() to scan_loop.
+ (scan_loop): Remove nregs parameter, compute it after any new
+ registers are created by load_mems. Use INSN_IN_RANGE_P and
+ next_insn_in_loop rather than expanding them inline. Call
+ load_mems to load memory into pseudos, if appropriate.
+ (prescan_loop): Figure out whether or not there are jumps from the
+ loop to targets other than the label immediately following the
+ loop. Call insert_loop_mem to notice all the MEMs used in the
+ loop, if it could be safe to pull MEMs into REGs for the duration
+ of the loop.
+ (strength_reduce): Use next_insn_in_loop. Tweak comments.
+
+Wed Aug 19 08:29:44 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.c (arm_override_options): Remove lie about ignoring PIC flag.
+
+Wed Aug 19 07:08:15 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/sparc/sparc.c (finalize_pic): Check for the correct
+ nonlocal_goto_receiver UNSPEC number.
+ * config/sparc/sparc.md (nonlocal_goto_receiver): Add comment
+ making note of this dependency existing in sparc.c
+ (negtf2_notv9 split): Give NEG SFmode.
+ (negsf2): Fix insn output string.
+
Tue Aug 18 12:40:27 1998 Richard Henderson <rth@cygnus.com>
* c-common.c (decl_attributes): Issue an error if the argument
Tue Aug 18 10:33:30 1998 Jeffrey A Law (law@cygnus.com)
+ * haifa-sched.c (sched_analyze): Put all JUMP_INSNs on the last
+ pending memory flush list.
+
+ * combine.c (can_combine_p): Allow combining insns with REG_RETVAL
+ notes.
+ (try_combine): Allow combining insns with REG_LIBCALL notes.
+
* expr.c (emit_block_move): Do not call memcpy as a libcall
instead build up a CALL_EXPR and call it like any other
function.