+Fri Jun 12 18:06:45 1998 Doug Evans <devans@egcs.cygnus.com>
+
+ * m32r/m32r.h (STARTFILE_SPEC): Delete crtsysc.o.
+
+Fri Jun 12 14:57:59 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.c (small_int): Mark parameter `mode' with ATTRIBUTE_UNUSED.
+ (large_int): Likewise.
+ (pc_or_label_operand): Likewise.
+ (call_insn_operand): Likewise.
+ (consttable_operand): Likewise.
+ (m16_uimm3_b): Likewise.
+ (m16_simm4_1): Likewise.
+ (m16_nsimm4_1): Likewise.
+ (m16_simm5_1): Likewise.
+ (m16_nsimm5_1): Likewise.
+ (m16_uimm5_4): Likewise.
+ (m16_nuimm5_4): Likewise.
+ (m16_simm8_1): Likewise.
+ (m16_nsimm8_1): Likewise.
+ (m16_uimm8_1): Likewise.
+ (m16_nuimm8_1): Likewise.
+ (m16_uimm8_m1_1): Likewise.
+ (m16_uimm8_4): Likewise.
+ (m16_nuimm8_4): Likewise.
+ (m16_simm8_8): Likewise.
+ (m16_nsimm8_8): Likewise.
+ (m16_usym8_4): Likewise.
+ (m16_usym5_4): Likewise.
+ (mips_move_1word): Change type of variable `i' from int to size_t.
+ (mips_move_2words): Likewise.
+ (output_block_move): Mark parameter `libname' with ATTRIBUTE_UNUSED.
+ (function_arg_advance): Use HOST_PTR_PRINTF to print an address.
+ (function_arg): Likewise.
+ (function_arg_partial_nregs): Mark parameter `named' with
+ ATTRIBUTE_UNUSED.
+ (override_options): Use ISDIGIT instead of isdigit.
+ (mips_output_external): Mark parameter `file' with ATTRIBUTE_UNUSED.
+ (final_prescan_insn): Likewise for parameters `opvec' and `noperands'.
+ (save_restore_insns): Cast HOST_WIDE_INT arguments passed to
+ function `fatal' to long before printing. Use
+ HOST_WIDE_INT_PRINT_DEC in fprintf. Both changes done several
+ times in this function.
+ (function_prologue): Mark parameter `size' with ATTRIBUTE_UNUSED.
+ (function_epilogue): Likewise for parameters `file' and `size'.
+ Print an int with "%d" not "%ld".
+ (mips_select_rtx_section): Mark parameter `x' with ATTRIBUTE_UNUSED.
+ (mips_function_value): Likewise for parameter `func'.
+ (function_arg_pass_by_reference): Likewise for parameters `cum'
+ and `named'.
+ (extend_operator): Likewise for parameter `mode'
+ (highpart_shift_operator): Likewise.
+
+ * mips.md (mul_acc_si): Remove unused variable `macc'.
+
+Fri Jun 12 09:33:44 1998 Richard Henderson <rth@cygnus.com>
+
+ * fold-const.c (fold): Revert last change. It breaks constant
+ expressions somehow.
+
+Fri Jun 12 10:23:36 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * expr.c (do_jump, case EQ_EXPR, NE_EXPR): When comparing complex
+ prevent operands from being evaluated twice.
+
+Fri Jun 12 00:50:27 1998 Sergey Okhapkin <sos@prospect.com.ru>
+
+ * toplev.c (lang_options): Add -remap as a preprocessor option.
+
+Fri Jun 12 00:30:32 1998 John Wehle (john@feith.com)
+
+ * i386.md (cmpsi_1, cmphi_1, cmpqi_1): Remove code
+ which set CC_REVERSED since reload should ensure that
+ the operands are already the correct type.
+
+Thu Jun 11 17:14:15 1998 Jim Wilson <wilson@cygnus.com>
+
+ * except.c (expand_builtin_eh_stub): Call emit_move_insn rather than
+ calling gen_rtx_SET.
+
+Thu Jun 11 18:45:49 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * config/rs6000/x-aix43 (AR): Delete.
+ (AR_FOR_TARGET_FLAGS): Add -X32_64 here.
+
+Thu Jun 11 16:19:17 1998 David W. Schuler <schuld@btv.ibm.com>
+
+ * config/i386/aix386ng.h (CPP_SPEC): Remove extraneous quote.
+
+Thu Jun 11 12:40:27 1998 Jim Wilson <wilson@cygnus.com>
+
+ * mips.c (override_options): Replace word_mode with explicit
+ TARGET_64BIT check.
+
+Thu Jun 11 14:50:02 1998 Michael Meissner <meissner@cygnus.com>
+
+ * regmove.c (regmove_optimize): If we can't replace the
+ destination in an insn that sets the source, generate an explicit
+ move of the source to the destination.
+ (copy_src_to_dest): New function.
+ (toplevel): Include basic-block.h
+
+ * Makefile.in (regmove.o): Add basic-block.h dependencies.
+
+Thu Jun 11 10:30:09 1998 Dave Brolley <brolley@cygnus.com>
+
+ * toplev.c (lang_options): Add missing options (nostdinc, idirafter).
+
+Wed Jun 10 23:39:32 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * rtl.h (rtx_def): Improve documentation.
+ (MEM_IN_STRUCT_P): Likewise.
+
+Wed Jun 10 23:23:17 1998 Graham <grahams@rcp.co.uk>
+
+ * c-decl.c (start_decl): Correct test for -Wmain.
+
+ * c-decl.c (grokdeclarator): Remove unused variable "last".
+
+Wed Jun 10 14:52:27 1998 Jim Wilson <wilson@cygnus.com>
+
+ * expr.c (expand_builtin_setjmp): Store const1_rtx in target.
+ (expand_builtin_longjmp): Abort if value isn't const1_rtx.
+ Delete code storing value in static_chain_rtx.
+ (expand_builtin, case BUILT_IN_LONGJMP): Pass NULL_RTX for target
+ to second expand_expr call.
+
+Wed Jun 10 13:08:41 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * mips/mips.c: Remove -mabi=o32 and -mabi=n64.
+
+Wed Jun 10 13:41:23 1998 Dave Brolley <brolley@cygnus.com>
+
+ * cppmain.c (fatal): New function.
+ * configure.in (cpp_main): New configuration variable.
+ * configure: Regenerated.
+ * Makefile.in (CCCP): Use a configuration variable to select basex
+ for cccp.
+ (cppmain$(exeext)): Add @extra_cpp_objs@.
+
+Wed Jun 10 13:07:02 1998 Dave Brolley <brolley@cygnus.com>
+
+ * objc/objc-act.c: Add cpplib declarations.
+ (lang_decode_option): Initialize cpplib if necessary.
+ (lang_decode_option): New argc/argv interface.
+ * tree.h (lang_decode_option): New argc/argv interface.
+ * toplev.c (lang_options): Add cpp options.
+ (main): New interface for lang_decode_option.
+ * gcc.c (default_compilers): Don't call cpp for a cpplib-enabled C compiler
+ unless -E, -M or -MM is specified.
+ * cpplib.h (cpp_handle_option): New function.
+ * cpplib.c (cpp_handle_option): New function.
+ (cpp_handle_options): Now calls cpp_handle_option.
+ * c-tree.h (c_decode_option): New argc/argv interface.
+ * c-lex.c (init_parse): cpplib now initialized in c_decode_option.
+ * c-lang.c (lang_decode_option): New argc/argv interface.
+ * c-decl.c: Add cpplib declarations.
+ (c_decode_option): New argc/argv interface.
+ (c_decode_option): Call cpp_handle_option.
+ (c_decode_option): Now returns number of strings processed.
+
+Wed Jun 10 09:47:13 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * unroll.c (verify_addresses): Use validate_replace_rtx to undo the
+ changes. Abort if the undo fails.
+
+Wed Jun 10 08:56:27 1998 John Carr <jfc@mit.edu>
+
+ * reload1.c (reload_cse_simplify_operands): Do not call gen_rtx_REG
+ for each alternative. Do not replace a CONST_INT with a REG unless
+ the reg is cheaper.
+
+Wed Jun 10 02:11:55 1998 Jeffrey A Law (law@cygnus.com)
+
+ * decl.c (init_decl_processing): Fix typo.
+
+ * mips.c (gpr_mode): New variable.
+ (override_options): Initialize gpr_mode.
+ (compute_frame_size): Use "gpr_mode" instead of "word_mode" to
+ determine size and offset of general purpose registers save slots.
+ (save_restore_insns, mips_expand_prologue): Similarly.
+
+ * reload.c (find_reloads_toplev): Use gen_lowpart common to convert
+ between constant representations when we have (SUBREG (REG)) with
+ REG equivalent to a constant.
+
+Wed Jun 10 01:39:00 1998 Juha Sarlin <juha@c3l.tyreso.se>
+
+ * h8300.c (get_shift_alg): Add special cases for shifts of 8 and 24.
+
+Tue Jun 9 22:05:34 1998 Richard Henderson <rth@cygnus.com>
+
+ * fold-const.c (fold): Even with otherwise constant trees, look for
+ opportunities to combine integer constants.
+
+Wed Jun 3 23:41:24 EDT 1998 John Wehle (john@feith.com)
+
+ * i386.c (notice_update_cc): Clear cc_status.value2 in the
+ case of UNSPEC 5 (bsf).
+
+ * i386.md (movsfcc, movdfcc, movxfcc): The floating point
+ conditional move instructions don't support signed integer
+ comparisons.
+
+Tue Jun 9 14:31:19 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/t-v850 (TCFLAGS): Add assembler options to warn of
+ overlfows.
+
+ * config/v850/lib1funcs.asm (__return_interrupt): Use 'addi
+ 16,sp,sp' ratehr than 'add 16,sp'. Patch courtesy of Biomedin
+ <glctr@abc.it>.
+
+Tue Jun 9 16:23:13 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * except.c (expand_start_catch): Rename to start_catch_handler.
+ (expand_end_catch): Delete function.
+ (expand_end_all_catch): Remove catch status that expand_end_catch
+ use to do.
+ * except.h (expand_start_catch): Rename prototype.
+ (expand_end_catch): Delete prototype.
+
+Tue Jun 9 12:57:32 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * invoke.texi: Add documentation for -mips4 and -mabi=*.
+
+Tue Jun 9 12:12:34 1998 Klaus Kaempf (kkaempf@progis.de)
+
+ * alpha/vms.h (EXTRA_SECTIONS): Add in_ctors and in_dtors.
+ (EXTRA_SECTION_FUNCTIONS): Add ctors_section and dtors_section.
+ (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Define.
+
+Tue Jun 9 12:10:27 1998 John Carr <jfc@mit.edu>
+
+ * haifa-sched.c (update_flow_info): Use UNITS_PER_WORD, not MOVE_MAX,
+ as the threshold to permit splitting memory operations.
+
+Tue Jun 9 12:36:16 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.c (gpr_mode): New variable.
+ (override_options): Initialize gpr_mode.
+ (compute_frame_size): Use "gpr_mode" instead of "word_mode" to
+ determine size and offset of general purpose registers save slots.
+ (save_restore_insns, mips_expand_prologue): Similarly.
+
+ * Makefile.in (LIB2FUNCS_EH): Define. Just "_eh" for now.
+ (LIBGCC2_CFLAGS): Remove -fexceptions.
+ (LIB2FUNCS): Remove "_eh".
+ (libgcc2.a): Iterate over LIB2FUNCS_EH and build everything in
+ it with -fexceptions.
+
+ * Makefile.in (local-alloc.o): Depend on insn-attr.h.
+ * local-alloc.c (block_alloc): Avoid creating false
+ dependencies for targets which use instruction scheduling.
+
+Tue Jun 9 02:40:49 1998 Richard Henderson <rth@cygnus.com>
+
+ * mips/elf.h (ASM_DECLARE_OBJECT_NAME): Define.
+ (ASM_FINISH_DECLARE_OBJECT): Define;
+ * mips/elf64.h: Likewise.
+
+Tue Jun 9 01:08:47 1998 Richard Henderson <rth@cygnus.com>
+
+ * toplev.c (flag_new_exceptions): Remove extraneous `extern'.
+
+Mon Jun 8 23:24:48 PDT 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon Jun 8 23:24:58 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.md (mulsidi3): Add !TARGET_POWERPC64 constraint.
+ (mulsidi3_ppc64): Delete.
+
+Mon Jun 8 20:57:40 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (varasm.o): Depend on dbxout.h.
+ (cse.o): Depend on toplev.h and output.h.
+ (gcse.o): Depend on output.h.
+
+ * mips.c: Include system.h and toplev.h and remove redundant code.
+ Include output.h after tree.h so all its prototypes get activated.
+ * mips.md (table_jump): Remove unused variable `dest'.
+
+ * sparc.h: Add prototype for `v8plus_regcmp_op'.
+
+ * crtstuff.c (fini_dummy, init_dummy): Mark function definitions
+ with __attribute__ ((__unused__)).
+ (__frame_dummy): Provide prototype before use, wrap it with
+ EH_FRAME_SECTION_ASM_OP.
+
+ * cse.c: Move inclusion of <setjmp.h> above local headers.
+ Include toplev.h and output.h.
+
+ * dbxout.h: Add prototype for `dbxout_begin_function'.
+
+ * final.c (final_scan_insn): Wrap variable `max_skip' in macro
+ ASM_OUTPUT_MAX_SKIP_ALIGN.
+
+ * gcse.c: Include system.h and output.h.
+ (dump_cuid_table, dump_rd_table, dump_cprop_data, dump_pre_data):
+ Make extern instead of static.
+ (compute_can_copy): Only declare variables `reg' and `insn' when
+ AVOID_CCMODE_COPIES is not defined.
+ (record_set_info): Mark parameter `setter' with ATTRIBUTE_UNUSED.
+ (hash_scan_clobber): Likewise for `x' and `insn'.
+ (hash_scan_call): Likewise.
+ (record_last_set_info): Likewise for `setter'.
+ (mark_call): Likewise for `pat'.
+ (pre_insert_insn): Wrap variable `note' in macro HAVE_cc0.
+
+ * libgcc2.c (__bb_init_prg): Replace bzero with memset and fix the
+ length parameter so that it multiplies the number of elements by
+ the sizeof(element).
+
+ * output.h: Add prototype for `weak_finish'.
+
+ * recog.h: Likewise for `validate_replace_src'.
+
+ * rtl.h: Likewise for `optimize_save_area_alloca',
+ `fix_sched_param', `purge_addressof', `gcse_main',
+ `regmove_optimize', `dbr_schedule', `branch_prob' and
+ `end_branch_prob'.
+
+ * toplev.h: Likewise for `set_float_handler' and
+ `output_quoted_string'.
+
+ * varasm.c: Include dbxout.h.
+
+Mon Jun 8 18:12:06 1998 Jim Wilson <wilson@cygnus.com>
+
+ * mips.c (mips_secondary_reload_class): Use gp_reg_p instead of
+ GP_REG_P. Use gr_regs instead of GR_REGS.
+
+Mon Jun 8 16:54:12 1998 Ken Raeburn <raeburn@cygnus.com>
+ Jeff Law <law@cygnus.com>
+
+ * Revamped multiply support for MIPS chips.
+ * mips.c (extend_operator): New function.
+ (highpart_shift_operator): Likewise.
+ * mips.h: Declare new functions.
+ (PREDICATE_CODES): Add support for new predicates.
+ * mips.md (mulsi3 expander): Simplify.
+ (mulsi_mult3): Add another constraint alternative. Support
+ 3 operand multiply instructions as found on various mips
+ parts.
+ (mulsi3_r4650): Delete pattern, now handled by mulsi_mult3.
+ (mul_acc_si): New pattern and associated splitters.
+ (mulsidi3 expander): Rework to use mulsidi3_64bit and
+ mulsidi3_internal.
+ (umulsidi3): New expander.
+ (mulsidi3_internal): Accept either sign or zero extended
+ operands and generate code as appropriate appropriately.
+ (mulsidi3_64bit): Similarly.
+ (smulsi3_highpart): Turn into an expander and generate code
+ to match new patterns.
+ (umulsi3_highpart): Likewise.
+ (xmulsi3_highpart_internal): New pattern.
+ (maddi patterns): Delete. Replace with:
+ (mul_acc_di, mul-acc_64bit_di): New patterns.
+
+Mon Jun 8 14:16:15 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * eh-common.h: Remove NEW_EH_MODEL compile time flag, and replace with
+ flag_new_exceptions runtime flag.
+ (struct old_exception_table): New struct which represents what
+ the exception table looks like without the new model.
+ (NEW_EH_RUNTIME): New value used as a tag in the exception table to
+ flag that this is a new style table.
+ * except.h: Remove compile time flag NEW_EH_MODEL.
+ (expand_builtin_eh_stub_old): New prototype.
+ * tree.h (enum built_in_function): Add BUILT_IN_EH_STUB_OLD.
+ * expr.c (expand_builtin): New builtin func BUILT_IN_EH_STUB_OLD.
+ * c-decl.c (init_decl_processing): Add new builtin function
+ __builtin_eh_stub_old.
+ * final.c (final_scan_insn): Replace compile time flag NEW_EH_MODEL.
+ * flags.h (flag_new_exceptions): New runtime flag.
+ * toplev.c (flag_new_exceptions): Initialize default to 0,
+ -fnew-exceptions sets to 1.
+ * except.c (output_exception_table_entry): Output New style exception
+ identifier into table, and replace compile time flag NEW_EH_MODEL
+ with runtime flag flag_new_exceptions.
+ (output_exception_table): Replace compile time flag NEW_EH_MODEL.
+ (expand_builtin_eh_stub_old): Duplicates original functionality of
+ expand_builtin_eh_stub.
+ (expand_builtin_eh_stub): Replace compile time flag NEW_EH_MODEL.
+ * libgcc2.c (find_exception_handler): Remove NEW_EH_MODEL #ifdefs.
+ (old_find_exception_handler): New func, same as find_exception_handler
+ except it works on the old style exception table.
+ (__throw): Replace NEW_EH_MODEL. Detect new model based on presence
+ of identifier in the exception table, and call appropriate routines.
+
+Mon Jun 8 01:21:13 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * function.c: Define current_function_cannot_inline.
+ (push_function_context_to): Save it.
+ (pop_function_context_from): Restore it.
+ * function.h (struct function): Provide it a home.
+ * output.h: Declare it.
+ * integrate.c (function_cannot_inline_p): Check it.
+
+Mon Jun 8 10:43:15 1998 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (force_operand): Detect PIC address loads before
+ splitting arithmetic.
+
+Mon Jun 8 09:22:38 PDT 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon Jun 8 02:55:56 1998 Graham <grahams@rcp.co.uk>
+
+ * tree.c (tree_class_check): Add braces to eliminate ambigious
+ else warning.
+ (tree_check): Likewise.
+
+Mon Jun 8 02:49:23 1998 H.J. Lu (hjl@gnu.org)
+
+ * reg-stack.c (subst_stack_regs_pat): Make sure the top of
+ stack is the destination for conditional move insn.
+
+Mon Jun 8 01:21:13 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * tree.h (TREE_VEC_END): Cast unused value to void.
+
+ * i386.c (print_operand): Use %lx for long operand.
+
+Mon Jun 8 00:04:07 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (summarize_insn): Ignore rtl slot format 'i'.
+
+Sun Jun 7 14:15:45 1998 John Carr <jfc@mit.edu>
+
+ * sol2.h (INIT_SUBTARGET_OPTABS): Use Solaris libc float/long long
+ conversion functions.
+
+Sun Jun 7 14:02:58 1998 Richard Henderson <rth@cygnus.com>
+
+ * toplev.c (flag_exceptions): Default to 0.
+ (compile_file): Remove flag_exceptions == 2 hack.
+ (main): Call lang_init_options.
+ * tree.h: Declare it.
+ * c-lang.c: Implement it.
+ * objc/objc-act.c: Likewise.
+
+Sun Jun 7 12:27:30 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.md (restore_stack_block): Generate MEM and specify mode.
+ * rs6000.h (STACK_SAVEAREA_MODE): SAVE_FUNCTION is VOIDmode.
+ * rs6000.c (rs6000_output_load_toc_table): Use fputs.
+ (output_function_profiler): Use asm_fprintf and fputs.
+
+Sat Jun 6 12:17:12 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gencheck.c: Remove redundant stdio.h include. Add a definition
+ of xmalloc for when we are forced to link with alloca.o.
+
+ * reload1.c (reload_reg_free_for_value_p): Use `(unsigned)1'
+ instead of `1U'.
+
+ * fold-const.c (constant_boolean_node): Make definition static to
+ match the prototype.
+
+Fri Jun 5 15:53:17 1998 Per Bothner <bothner@cygnus.com>
+
+ * gcc.c (lang_specific_pre_link): New LANG_SPECIFIC_DRIVER function.
+ (lang_specific_extra_outfiles): New LANG_SPECIFIC_DRIVER variable.
+ (do_spec, input_filename, input_filename_length): Make public.
+ (main): Adjust outfiles allocation by lang_specific_extra_outfiles.
+ Call lang_specific_pre_link befor elinking.
+
+Fri Jun 5 12:29:28 1998 Jeffrey A Law (law@cygnus.com)
+
+ * haifa-sched.c (rank_for_schedule): For "equally good insns", prefer
+ the insn which has the most insns dependent on it.
+
+Fri Jun 5 09:03:22 1998 John Carr <jfc@mit.edu>
+
+ * alias.c (find_base_value): Avoid reading past end of reg_base_value.
+
+Fri Jun 5 03:05:34 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (insxh-1): New insxl pattern for combine.
+
+Fri Jun 5 01:12:15 1998 H.J. Lu (hjl@gnu.org)
+
+ * i386/i386.c (output_fp_conditional_move): New function
+ to output floating point conditional move.
+ (output_int_conditional_move): New function to output integer
+ conditional move.
+
+ * i386/i386.md (movsicci+5, movhicc+5, movdicc+5): Call
+ output_int_conditional_move () to output int conditional move.
+ (movsfcc+5, movdfcc+5, movxfcc+5): Call
+ output_fp_conditional_move () to output floating point
+ conditional move.
+
+ * i386/i386.c (put_condition_code): In INT mode, check
+ cc_prev_status.flags & CC_NO_OVERFLOW for GE and LT.
+
+Thu Jun 4 16:09:51 1998 Dave Brolley <brolley@cygnus.com>
+
+ * dbxout.c (dbxout_type): Output arrays of bits as if
+ they were bitstrings for Chill
+
+Thu Jun 4 14:35:27 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * tree.c (get_inner_array_type): New function.
+ * tree.h (get_inner_array_type): Prototype.
+ * expr.h (STACK_SAVEAREA_MODE): New macro.
+ * expr.c (expand_builtin_setjmp): Initialize sa_mode using
+ STACK_SAVEAREA_MODE.
+ (expand_builtin_longjmp): Likewise.
+ * explow.c (emit_stack_save): Likewise.
+ (allocate_dynamic_stack_space): Use Pmode not insn_operand_mode.
+
+ * rs6000/aix41.h (ASM_CPU_SPEC): Define relative to ASM_DEFAULT_SPEC.
+ (CPP_CPU_SPEC): Define relative to CPU_DEFAULT_SPEC.
+ * rs6000/aix43.h: New file.
+ * rs6000/t-aix43: New file.
+ * rs6000/x-aix41: New file.
+ * rs6000/x-aix43: New file.
+ * configure.in (rs6000-ibm-aix*): Use them.
+ * rs6000/powerpc.h: Delete.
+ * rs6000/sysv4.h: Move necessary powerpc.h definitions to here.
+ * rs6000/netware.h: and here.
+ * rs6000/win-nt.h: and here.
+
+ * rs6000/rs6000.c (processor_target_table, 620): Do not affect
+ MASK_POWERPC64.
+ (rs6000_override_options): Ignore flag_pic for AIX.
+ (rs6000_immed_double_const): Delete.
+ (u_short_cint_operand): Don't assume 32-bit CONST_INT.
+ (reg_or_u_short_operand): Don't assume 32-bit CONST_INT.
+ (num_insns_constant): mask64_operand() is 2 insns.
+ (logical_operand): Don't assume 32-bit CONST_INT.
+ (non_logical_cint_operand): Don't assume 32-bit CONST_INT.
+ (easy_fp_constant): Any CONST_DOUBLE_HIGH is okay for 64-bit.
+ (mask_constant): HOST_WIDE_INT parameter.
+ (non_and_cint_operand): Delete.
+ (mask64_operand): New function.
+ (and64_operand): New function.
+ (function_arg_advance): DImode arguments do not need special
+ alignment when 64-bit.
+ (function_arg): Likewise.
+ (setup_incoming_varargs): Reverse reg_size assignment.
+ (print_operand): HOST_WIDE_INT second parameter.
+ (print_operand, 'B'): New case.
+ (print_operand, 'M'): Fix typo in lossage string.
+ (print_operandm 'S'): New case.
+ (rs6000_stack_info): Reverse reg_size assignment. Use total_raw_size
+ to compute AIX push_p. Use reg_size to compute {cr,lr}_save_offset.
+ (rs6000_output_load_toc_table): Reverse init_ptr assignment. Use
+ TARGET_64BIT not TARGET_POWERPC64. Convert fprintf to fputs.
+ Load GOT highpart, don't add it. Add lowpart with {cal|la}.
+ (rs6000_allocate_stack_space): Use {cal|la}.
+ (output_epilog): Use {cal|la}
+ (output_function_profiler): Add call glue to mcount call.
+ Load GOT highpart, don't add it. Add lowpart with {cal|la}.
+
+ * rs6000/rs6000.h (TARGET_SWITCHES): Add powerpc64.
+ (STACK_BOUNDARY): Depend on TARGET_32BIT.
+ (ADJUST_FIELD_ALIGN): Calculate array alignment using innermost type.
+ (CONST_OK_FOR_LETTER_P): Don't assume 32-bit CONST_INT.
+ (EXTRA_CONSTRAINTS): Remove NT 'S' and 'T'. Replace 'S' with
+ 64-bit mask operand.
+ (RS6000_SAVE_TOC): Depend on TARGET_32BIT.
+ (STACK_SAVEAREA_MODE): New macro.
+ (LEGITIMATE_CONSTANT_P): DImode okay for 64bit.
+ (LEGITIMIZE_RELOAD_ADDRESS): New macro.
+ (RTX_COSTS, AND/IOR/XOR): Reflect current machine description.
+ (ASM_FILE_START): Emit 64-bit ABI directive.
+ (ASM_DECLARE_FUNCTION_NAME): Align CSECT on doubleword in 64-bit mode.
+ (ASM_OUTPUT_SPECIAL_POOL_ENTRY): DImode okay for 64-bit.
+ (PREDICATE_CODES): Add "and64_operand" and "mask64_operand".
+ Delete "non_and_cint_operand". "input_operand" includes CONST_DOUBLE.
+
+ * rs6000/rs6000.md (iorsi3, xorsi3): Use HOST_WIDE_INT for mask.
+ Restore define_splits.
+ (floatsidf2, floatunssidf2): Remove !TARGET_POWERPC64 final constraint.
+ (floatsidf2_internal, floatunssidf2_internal2): Likewise.
+ Do not specify base register operand mode.
+ (floatsidf2_loadaddr): Do not specify base register operand mode.
+ (floatsidf2_store1, floatsidf2_store2): Operand 1 must be base
+ register; do not specify mode. Remove !TARGET_POWERPC64 final
+ constraint.
+ (floatsidf2_load): Do not specify base register operand mode. Remove
+ !TARGET_POWERPC64 final constraint.
+ (fix_truncdfsi2_internal, fix_truncdfsi2_{store,load}): Do not specify
+ base register operand mode.
+ (adddi3): Split large constants early.
+ (absdi3): Shift by 63, not 31.
+ (*mulsidi3_ppc64): New pattern.
+ (rotldi3): Add masking combiner patterns.
+ (anddi3): Add rldic{r,l} masking. Remove split of large constants
+ because PPC insns zero-extend.
+ (iordi3, xordi3): Split large constants early.
+ (movsi matcher): Remove S and T constraints.
+ (movsf const_double): create SImode constant from TARGET_DOUBLE.
+ (movdf_hardfloat32): Add default abort() case.
+ (movdf easy_fp_const): create DImode constant from TARGET_DOUBLE.
+ (movdi): Remove 64-bit constant generator. Try to convert
+ CONST_DOUBLE to CONST_INT. Handle TOC memory constants.
+ (movdi_32): Add default abort() case.
+ (movdi_64): Add numerous ways to split 64-bit constants.
+ Make catch-all define_split more optimal and never FAIL.
+ (movti_ppc64): Add default abort() case.
+ (allocate_stack): Remove operand modes. Use Pmode.
+ (restore_stack_block): Remove operand modes. Generate Pmode
+ temporary.
+ (save_stack_nonlocal, restore_stack_nonlocal): Generate Pmode
+ temporary. Save area is double Pmode.
+ (call_indirect_aix64, call_value_indirect_aix64): New patterns.
+ (call, call_value): Do not specify address operand mode. Choose
+ appropriate AIX ABI.
+ (*call_local64, *ret_call_local64): New patterns.
+ (*call_nonlocal_aix64, *ret_call_nonlocal_aix64): New patterns.
+ (*ret_call_nonlocal_aix32): Use call_value_indirect for REG.
+ (compare): Materialize DImode truthvalues.
+
+Thu Jun 4 01:26:57 1998 Craig Burley <burley@gnu.org>
+
+ * expr.c (safe_from_p): Avoid combinatorial explosion
+ over duplicate SAVE_EXPRs by ensuring we never recurse
+ on one that has already been visited.
+
+Thu Jun 4 00:54:21 1998 Graham <grahams@rcp.co.uk>
+
+ * loop.c (check_dbra_loop): Initialise final_value before
+ normalizing the loop.
+
+Wed Jun 3 20:00:04 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (reload_reg_free_for_value_p): New arguments out and
+ reloadnum. Changed all callers.
+
+1998-06-03 Ulrich Drepper <drepper@cygnus.com>
+
+ * system.h: Add _() and N_() macros in preparation for gettext.
+
+Wed Jun 3 11:02:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * c-common.c (check_format_info): Put back check for C9x `hh'
+ length modifier. Warn about %n format writing into const. Remove
+ obsolete comment.
+ (format_char_info): Fix comments.
+
+ * configure.in: Set float_format to m68k for all m68k targets that
+ do not override LONG_DOUBLE_TYPE_SIZE.
+ * config/float-m68k.h: New file.
+
+Tue Jun 2 23:14:01 1998 Richard Henderson <rth@cygnus.com>
+
+ * jump.c (jump_optimize): Remove debug messages accidentally left in
+ with the previous change.
+
Tue Jun 2 22:46:08 1998 Richard Henderson <rth@cygnus.com>
* expr.c (store_expr): Revert stray patch associated with
* vax/netbsd.h (DWARF2_UNWIND_INFO): Must be undef, not defined 0.
Mon Jun 1 03:44:03 1998 Catherine Moore <clm@cygnus.com>
-
+
* config/sh/sh.h (MAX_OFILE_ALIGNMENT): Define.
* varasm.c (assemble_variable): Augment alignment warning.
Thu May 28 12:57:05 1998 Jeffrey A Law (law@cygnus.com)
* reload.c (find_reloads): Do not force a reloads of match_operators.
-
+
Thu May 28 10:22:22 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
* except.h (remove_handler): Add new prototype.
* Makefile.in (c-pragma.o): Add except.h, rtl.h dependencies.
(tree.o): Add except.h dependency.
-
+
Wed May 27 22:02:40 1998 Jeffrey A Law (law@cygnus.com)
* reload1.c: Revert accidental checkin.
Wed May 27 02:50:00 1998 Catherine Moore (clm@cygnus.com)
- * config/sparc/lb1spc.asm (.rem and .urem): Replace
+ * config/sparc/lb1spc.asm (.rem and .urem): Replace
routines.
Wed May 27 02:48:31 1998 Richard Earnshaw (rearnsha@arm.com)
Fri May 22 03:42:05 1998 Richard Earnshaw (rearnsha@arm.com)
- * genextract.c (print_path): Handle zero-length path as a special
+ * genextract.c (print_path): Handle zero-length path as a special
case.
Fri May 22 01:38:07 1998 Hans-Peter Nilsson <hp@axis.se>
1998-05-21 Mark Mitchell <mmitchell@usa.net>
* cplus-dem.c (do_type): Handle volatile qualification.
-
+
Thu May 21 12:23:17 1998 Per Bothner <bothner@cygnus.com>
* function.c (init_function_start): Don't call emit_line_note if
(do_warning): Likewise. Also add missing argument `pfile' in call
to cpp_pedwarn.
(do_once): Mark parameter `keyword', `unused1' and `unused2' with
- ATTRIBUTE_UNUSED.
+ ATTRIBUTE_UNUSED.
(do_ident): Likewise for `keyword', `buf' and `limit'.
(do_pragma): Likewise. Also add missing arguments in call to do_once.
(do_sccs): Mark parameter `keyword', `buf' and `limit' with
- ATTRIBUTE_UNUSED.
+ ATTRIBUTE_UNUSED.
(do_if): Likewise for `keyword'.
(do_elif): Likewise.
(eval_if_expression): Likewise for `buf' and `length'.
(fatal): Remove redundant prototype.
(cpp_error, cpp_warning, cpp_pedwarn, cpp_error_with_line,
cpp_pedwarn_with_line, cpp_pedwarn_with_file_and_line,
- cpp_error_from_errno, cpp_perror_with_name, cpp_pfatal_with_name,
+ cpp_error_from_errno, cpp_perror_with_name, cpp_pfatal_with_name,
cpp_fatal, cpp_message, cpp_pfatal_with_name,
cpp_file_line_for_message, cpp_print_containing_files): Add
arguments to prototypes.
* cppmain.c: Include gansidecl.h.
(main): Remove unused variable `i'.
-
+
* dbxout.c: Include toplev.h.
* demangle.h (do_tlink, collect_execute, collect_exit,
* scan-decls.c: Include gansidecl.h.
* tree.h (using_eh_for_cleanups, supports_one_only): Add prototype.
-
+
Mon May 18 22:37:33 1998 Jeffrey A Law (law@cygnus.com)
* function.c (identify_blocks): Fix thinko when setting the
Mon May 18 15:30:42 1998 Nick Clifton <nickc@cygnus.com>
* config/v850/lib1funcs.asm: Add .text pseudo op to start of
- ___udivsi3.
+ ___udivsi3.
* config/v850/lib1funcs.asm: Fix .size pseudo ops to use three
- underscores for the prefixes to the names of the maths functions.
+ underscores for the prefixes to the names of the maths functions.
* dbxout.c (dbxout_parms): Revert to using DECL_ARG_TYPE. Add
comment explaining why.
* except.h: Various prototypes and structures for NEW_EH_MODEL
* function.h (struct function): Add a struct eh_stack for the catch
clause stack.
- * except.c (gen_exception_label): New function to generate an
+ * except.c (gen_exception_label): New function to generate an
exception label.
(push_eh_entry): Use gen_exception_label() and init 'label_used' field.
(push_entry): New function to push an existing entry onto a stack.
- (receive_exception_label): New function to emit the code required
+ (receive_exception_label): New function to emit the code required
at the start of all catch blocks.
(struct func_eh_entry): New structure for maintaining handlers
associated with EH regions.
(save_for_inline_copying): Make new copies of all the handlers.
(expand_inline_function): Make new copies of all the handlers.
* libgcc2.c: Remove local struct decls, and include eh-common.h.
- (find_exception_handler): With NEW_EH_MODEL the first matching
+ (find_exception_handler): With NEW_EH_MODEL the first matching
region we find is the right one. Add eh_info as a new parameter.
(__throw): Pass eh_info to find_exception_handler. Set handler
and pass use different regs under NEW_EH_MODEL.
* rtl.def (RANGE_LIVE): New node to hold live information while we
recalculate the basic blocks.
(RANGE_REG, RANGE_INFO): New rtl types for live range splitting.
- (RANGE_VAR): New node, to hold information saved in symbol node for New
+ (RANGE_VAR): New node, to hold information saved in symbol node for New
communicating live range information to the debug output functions.
* rtl.h (rtunion_def): Add rttree and rtbit fields.
(XBITMAP, XTREE): New accessor macros.
`i' from int to size_t.
(zero_fn): Mark parameter `exp' with ATTRIBUTE_UNUSED.
(one_fn): Likewise.
-
+
* genextract.c (main): When generating insn-extract.c, mark
variable `junk' with ATTRIBUTE_UNUSED.
`find_exception_handler' in macro DWARF2_UNWIND_INFO.
* objc/Make-lang.in (objc-act.o): Depend on toplev.h.
-
+
* objc/objc-act.c: Include toplev.h.
(lang_print_xnode): Mark parameters `file', `node' and `indent'
with ATTRIBUTE_UNUSED.
doing various cleanup operations after finishing compilation
of a function.
- * flow.c (dump_flow_info): Also print number of sets and
+ * flow.c (dump_flow_info): Also print number of sets and
whether or not the pseudo is a user variable.
* flow.c (reg_n_max): New global variable.
Tue May 12 14:04:49 1998 Jeffrey A Law (law@cygnus.com)
- * pa.h (DBX_CONTIN_LENGTH): Reduce to 3000 bytes.
+ * pa.h (DBX_CONTIN_LENGTH): Reduce to 3000 bytes.
Tue May 12 15:16:02 1998 Michael Meissner <meissner@cygnus.com>
Tue May 12 00:47:33 1998 John Wehle (john@feith.com)
- * varasm.c (assemble_variable): Compute the alignment of the data
+ * varasm.c (assemble_variable): Compute the alignment of the data
earlier so that both initialized and uninitialized variables are
effected by DATA_ALIGNMENT.
* tm.texi (DATA_ALIGNMENT): Updated appropriately.
* alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Add '`'.
* alpha.c (print_operand): Handle it.
- * alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
+ * alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
related define_splits. Also add peepholes for SImode reload
plus sign_extend lossage.
* loop.c (get_condition): Don't combine when either compare is MODE_CC.
* alpha.c (alpha_emit_conditional_branch): New function. Taken from
the body of beq; additionally set the mode of the branch to CCmode for
- FP compares and not fast_math.
+ FP compares and not fast_math.
(alpha_emit_conditional_move): Always use a compare insn for FP
when not fast_math, as well as setting CCmode on the cmov.
* alpha.md (beq, bne, blt, et al): Call alpha_emit_conditional_branch.
(m32r_expand_prologue): Expand prologue as a series of INSNs.
(m32r_print_operand): Add support for PRE_{INC,DEC}, POST_INC.
(m32r_print_operand_address): Ditto.
-
+
Fri May 8 14:13:21 1998 H.J. Lu (hjl@gnu.org)
* reload1.c (emit_reload_insns): When performing expensive
Thu May 7 14:26:05 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* aclocal.m4 (GCC_FUNC_VFPRINTF_DOPRNT): New macro.
-
+
* configure.in: Add a call to GCC_FUNC_VFPRINTF_DOPRNT.
(AC_CHECK_HEADERS): Remove unused check for varargs.h,sys/varargs.h.
(AC_CHECK_FUNCS): Remove unused check for vprintf.
-
+
* Makefile.in: Add support for linking in vfprintf.c and doprint.c.
(cccp.o): Depend on gansidecl.h.
(cexp.o): Likewise.
Thu May 7 10:55:59 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* config/m68k/m68k.md (adddi3, subdi3): Properly negate the DImode
- constant.
+ constant.
Wed May 6 22:32:37 CDT 1998 Robert Lipe <robertl@dgii.com>
hash.o, profile.o, real.o, reg-stack.o, regclass.o, reload.o,
reload1.o, stmt.o, stor-layout.o, tlink.o, tree.o, varasm.o): Add
toplev.h dependency.
-
+
* mips/mips.c (save_restore_insns): Change FRAME_POINTER_REGNUM to
HARD_FRAME_POINTER_REGNUM.
* scan.c: Likewise.
* stmt.c: Likewise.
* tlink.c: Likewise.
- * toplev.c: Likewise.
+ * toplev.c: Likewise.
Wed May 6 14:44:14 1998 Gavin Koch <gavin@cygnus.com>
- * config/mips/r3900.h (SUBTARGET_ASM_DEBUGGING_SPEC) :
+ * config/mips/r3900.h (SUBTARGET_ASM_DEBUGGING_SPEC) :
Replace -gdwarf-2 with -g0.
Wed May 6 11:43:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* toplev.h: New file. Protypes for functions in toplev.c.
* tree.h, rtl.h: Deleted protos for functions in toplev.c.
- * c-common.c, c-convert.c, c-decl.c, c-iterate.c, c-lex.c,
- c-parse.in, c-parse.y, c-pragma.c, c-typeck.c, calls.c,
- convert.c, dwarf2out.c, except.c, expr.c, final.c, fold-const.c,
- function.c, hash.c, profile.c, real.c, reg-stack.c, regclass.c,
- reload.c, reload1.c, stmt.c, stor-layout.c, tlink.c, tree.c,
+ * c-common.c, c-convert.c, c-decl.c, c-iterate.c, c-lex.c,
+ c-parse.in, c-parse.y, c-pragma.c, c-typeck.c, calls.c,
+ convert.c, dwarf2out.c, except.c, expr.c, final.c, fold-const.c,
+ function.c, hash.c, profile.c, real.c, reg-stack.c, regclass.c,
+ reload.c, reload1.c, stmt.c, stor-layout.c, tlink.c, tree.c,
varasm.c: include it.
Wed May 6 01:09:01 1998 Jeffrey A Law (law@cygnus.com)
(xm_defines): Add USG so dbxout will build.
* configure: Regenerate.
-Sun May 3 13:51:34 PDT 1998 Richard Henerson <rth@cygnus.com>
+Sun May 3 13:51:34 PDT 1998 Richard Henderson <rth@cygnus.com>
Support for official Sparc V9 ABI:
* sparc.c (sparc_override_options): Force stack bias off for !arch64.
Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
* egcs project officially starts.
+
+Local Variables:
+add-log-time-format: current-time-string
+End: